javascript - Trigger onClick event with URL -
i able navigate page , open content in 1 of 3 content containers in accordion js structure.
here html:
<div id="navigation"> <div id="accordioncontainer" class="accordioncontainer"> <div onclick="runaccordion(1); contentheight=1040;" id="reel"> <div class="accordiontitle" onselectstart="return false;">reel</div> </div> <div id="accordion1content" class="accordioncontent"> <div id="reelspots"> content </div> </div> <div onclick="runaccordion(2); contentheight=1075;"> <div class="accordiontitle" onselectstart="return false;">about</div> </div> <div id="accordion2content" class="accordioncontent"> content </div> <div onclick="runaccordion(3); contentheight=175;"> <div class="accordiontitle" onselectstart="return false;">contact</div> </div> <div id="accordion3content" class="accordioncontent"> content </div> </div> </div>
and here javascript:
// javascript document var contentheight = 200; var timetoslide = 250.0; var openaccordion = ''; function runaccordion(index) { var nid = "accordion" + index + "content"; if(openaccordion == nid) nid = ''; settimeout("animate(" + new date().gettime() + "," + timetoslide + ",'" + openaccordion + "','" + nid + "')", 33); openaccordion = nid; } function animate(lasttick, timeleft, closingid, openingid) { var curtick = new date().gettime(); var elapsedticks = curtick - lasttick; var opening = (openingid == '') ? null : document.getelementbyid(openingid); var closing = (closingid == '') ? null : document.getelementbyid(closingid); if(timeleft <= elapsedticks) { if(opening != null) opening.style.height = contentheight + 'px'; if(closing != null) { closing.style.display = 'none'; closing.style.height = '0px'; } return; } timeleft -= elapsedticks; var newclosedheight = math.round((timeleft/timetoslide) * contentheight); if(opening != null) { if(opening.style.display != 'block') opening.style.display = 'block'; opening.style.height = (contentheight - newclosedheight) + 'px'; } if(closing != null) closing.style.height = newclosedheight + 'px'; settimeout("animate(" + curtick + "," + timeleft + ",'" + closingid + "','" + openingid + "')", 33); }
i'd love able put #reel in url string , able navigate to, , open accordion1content.
you can use jquery's pageready function, along url parsing trigger click event: url looks like: http://mysite.com/?page=reel
$(function() { var url = window.location.href; var page = url.match(/page=([^\?]+)/)[1]; if (page=="reel") { runaccordion(1); } });
you add cases other page names well.
Comments
Post a Comment