Thanks--that definitely got it a lot cleaner. I ended up needing to do: var $slide = $(window.location.hash); if ($slide.length) { // found a match on hash id var $slideshow = $slide.parent().parent(); var $index = $slideshow.children().index($slide.parent()); }
But that was because of some HTML that I'm not terribly happy about but can't work around. Thanks for the push in a much better direction, and the great plugin. Isaac On Oct 23, 7:59 am, Mike Alsup <[EMAIL PROTECTED]> wrote: > > Alright, This is really messy, but it works. If anyone's got any tips > > on cleaning it up, have at it. > > > if ($('body').is('#page-photography')) { //I only want it to fire > > on one page. Guessing I save some miniscule amount of overhead on the > > other pages. > > var loc = window.location.hash; // get the anchor from the > > link, > > sohttp://www.example.com/index.php#testwouldgive me #test > > loc = loc.replace(/\#/g,""); // remove the pound symbol to > > give > > me just test > > var j = 0; // set a variable i'll be incrementing later. i > > have > > to do this because of some messy html later on. > > var goHere = 0; //set this so that, no matter what, the > > startingSlide parameter gets something > > > > $("#view-photos-block_1").children().children().each(function(i) > > { //i'm sure this could be cleaner. that might also be able to remove > > the j variable. > > if($(this).attr('id')) { //find out if there even > > is an id > > attribute; important because this is what controls j incrementin > > if($(this).attr('id') == loc) { //if the id > > and the anchor are > > the same, set goHere. this will later be used as the startingSlide > > parameter > > goHere = j; > > } > > j++; //increment j; this give me the real 0 > > index of the slide. > > } > > }) > > } > > I would think your code could be simplified down to something > resembling this: > > var $slide = $(window.location.hash); > if ($slide.length) { > // found a match on hash id > var $slideshow = $slide.parent(); > var index = $slideshow.index($slide); > > $slideshow.cycle({ > startindIndex: index > }); > > }