View Single Post
Old 01-10-2008, 12:40 PM   #1 (permalink)
searchbliss
v7n Mentor
 
searchbliss's Avatar
 
Join Date: 03-25-06
Posts: 724
iTrader: 1 / 100%
searchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nicesearchbliss is just really nice
Question Javascript help please!!!

I'm having problems with this script. Everthing works as should, but only if I make a selection, then re-load the page. I want it to occur with the onChange event without having to re-load the page. What am I missing??? Thanks.
Code:
<html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <BODY> <font face="Verdana" size="2">Menu: </font> <select id="s" name="s" onChange="doDMarquee()" style="color:#FF0000;background-color:#CCCCCC;font-family:Verdana;font-size:12px;"> <option value="" selected>- Select One -</option> <option value="http://www.searchbliss.com/Webmaster-Tools.htm">Webmaster Tools</option> <option value="http://www.searchbliss.com/Free-Website-Content.htm">Free Website Content</option> <option value="http://www.searchbliss.com/generators.asp">Buy Tools</option> </select> <SCRIPT language="JavaScript"> document.write('<div id=dmarquee class=dmarquee><div><div><a href="'+document.all.s.value+'">'+document.all.s.value+'</a></div></div></div>') var oMarquees = [], oMrunning, oMInterv = 20, //interval between increments oMStep = 9, //number of pixels to move between increments oStopMAfter = 5, //how many seconds should marquees run (0 for no limit) oResetMWhenStop = false, //set to true to allow linewrapping when stopping oMDirection = 'left'; //'left' for LTR text, 'right' for RTL text /*** Do not edit anything after here ***/ function doMStop() { clearInterval(oMrunning); for( var i = 0; i < oMarquees.length; i++ ) { oDiv = oMarquees[i]; oDiv.mchild.style[oMDirection] = '0px'; if( oResetMWhenStop ) { oDiv.mchild.style.cssText = oDiv.mchild.style.cssText.replace(/;white-space:nowrap;/g,''); oDiv.mchild.style.whiteSpace = ''; oDiv.style.height = ''; oDiv.style.overflow = ''; oDiv.style.position = ''; oDiv.mchild.style.position = ''; oDiv.mchild.style.top = ''; } } oMarquees = []; } function doDMarquee() { if( oMarquees.length || !document.getElementsByTagName ) { return; } var oDivs = document.getElementsByTagName('div'); for( var i = 0, oDiv; i < oDivs.length; i++ ) { oDiv = oDivs[i]; if( oDiv.className && oDiv.className.match(/\bdmarquee\b/) ) { if( !( oDiv = oDiv.getElementsByTagName('div')[0] ) ) { continue; } if( !( oDiv.mchild = oDiv.getElementsByTagName('div')[0] ) ) { continue; } var selObj = document.getElementById('s'); var selIndex = selObj.selectedIndex; oDiv.value = selObj.options[selIndex].text; oDiv.mchild.style.cssText += ';white-space:nowrap;'; oDiv.mchild.style.whiteSpace = 'nowrap'; oDiv.style.height = oDiv.offsetHeight + 'px'; oDiv.style.overflow = 'hidden'; oDiv.style.position = 'relative'; oDiv.mchild.style.position = 'absolute'; oDiv.mchild.style.top = '0px'; oDiv.mchild.style[oMDirection] = oDiv.offsetWidth + 'px'; oMarquees[oMarquees.length] = oDiv; i += 2; } } oMrunning = setInterval('aniMarquee()',oMInterv); if( oStopMAfter ) { setTimeout('doMStop()',oStopMAfter*1000); } } function aniMarquee() { var oDiv, oPos; for( var i = 0; i < oMarquees.length; i++ ) { oDiv = oMarquees[i].mchild; oPos = parseInt(oDiv.style[oMDirection]); if( oPos <= -1 * oDiv.offsetWidth ) { oDiv.style[oMDirection] = oMarquees[i].offsetWidth + 'px'; } else { oDiv.style[oMDirection] = ( oPos - oMStep ) + 'px'; } } } if( document.s.addEventListener ) { document.all.s.addEventListener('change',doDMarquee,false); } else if( document.all.s.addEventListener ) { document.all.s.addEventListener('change',doDMarquee,false); } else if( document.all.s.attachEvent ) { document.all.s.attachEvent('onchange',doDMarquee); } </SCRIPT> </BODY> </html>
searchbliss is offline   Reply With Quote
Sponsored Links
SEO Hosting by HostGator  Advertise Here  Buy Blog Links