Ga naar inhoud

[JavaScript] Frame-scrollscript


Aanbevolen berichten

Hoi iedereen, Michiel en ik zijn bezig met het maken van een scrollscript in een frame dat een ander frame aan kan spreken, zie onderstaande code: //pagina waar de scroll in plaatst moet vinden [code:1:3404a5f8f6] <html> <head> <title>Horizontal Scroll</title> <SCRIPT LANGUAGE="JavaScript"> self.focus(); // // ====== Function: scroll scrolls window or frame to the top or lest // Parm: p_start x/y coordinate of start position // p_stop x/y coordinate of stop position // p_pixel define pixels for a scroll // p_interval define interval for a scroll // p_dest destination (top/left) // Return value: none // var gl_scroller_timer_id; var gl_scroller_start; var gl_scroller_stop; var gl_scroller_pixel; var gl_scroller_interval; var gl_scroller_dest; var gl_scroller_current_pos; function scroller(p_start, p_stop, p_pixel, p_interval, p_dest){ gl_scroller_stop = p_stop; gl_scroller_pixel = p_pixel; gl_scroller_interval = p_interval; gl_scroller_dest = p_dest; if (gl_scroller_current_pos == p_start){ gl_scroller_start = p_start; } else { gl_scroller_start = gl_scroller_current_pos; // if reached to the stop position, stop scrolling } scroll_exe(); } // ====== Function: scroll_exe execute scrolling, called from scroller function scroll_exe(){ gl_scroller_start = gl_scroller_start + gl_scroller_pixel; // determine new start position if (gl_scroller_dest == "right"){ self.scroll(0, gl_scroller_start); gl_scroller_current_pos = document.body.offsetWidth; } else if(gl_scroller_dest == "left"){ self.scroll(gl_scroller_start, 0); // scrolling window or frame to the left gl_scroller_current_pos = document.body.offsetWidth; } if (gl_scroller_start < gl_scroller_stop){ gl_scroller_timer_id = setTimeout("scroll_exe()", gl_scroller_interval); } else { clearTimeout(gl_scroller_timer_id); // if reached to the stop position, stop scrolling } } function stop() { clearTimeout(gl_scroller_timer_id); } </SCRIPT> </head> <body bgcolor="#ffffff" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <table WIDTH="100" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="1973" HEIGHT="434" id="PP_final_links" ALIGN=""> <PARAM NAME=movie VALUE="PP_final_links.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#000000> <EMBED src="PP_final_links.swf" quality=high bgcolor=#000000 WIDTH="2137" HEIGHT="470" NAME="PP_final_links" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> </OBJECT> </td> <td> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="2378" HEIGHT="434" id="PP_final_rechts" ALIGN=""> <PARAM NAME=movie VALUE="PP_final_rechts.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#000000> <EMBED src="PP_final_rechts.swf" quality=high bgcolor=#000000 WIDTH="2576" HEIGHT="470" NAME="PP_final_rechts" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> </OBJECT> </td> </tr> </table> </body> </html> [/code:1:3404a5f8f6] //Het navigatieframe, met knoppen voor links en rechts [code:1:3404a5f8f6] <html> <head> <title>top/bottom</title> </head> <body bgcolor="#000000" leftmargin="0" topmargin="2" marginwidth="0" marginheight="2"> <!--<INPUT TYPE="button" NAME="i_x" VALUE="Horizontal" onClick="top.frame_x.scroller(0,2000,15,100,'left');">--> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <INPUT TYPE="button" NAME="i_x" VALUE="Naar rechts" onmouseOver="top.frame_x.scroller(0,4351,5,1,'left');" onmouseOut="top.frame_x.stop();"></td> <td valign="top" align="right"> <INPUT TYPE="button" NAME="i_-x" VALUE="Naar links" onmouseOver="top.frame_x.scroller(4351,0,5,1,'right');" onmouseOut="top.frame_x.stop();"> </td> </tr> </table> <!--<br> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td bgcolor="#ffffff"> &nbsp; </td> </tr> </table>--> </body> </html> [/code:1:3404a5f8f6] De bedoeling is dat de positie van de scrollpagina 'bewaard' blijft om zo, bij de volgende onMouseOver op de knop, door te kunnen scrollen vanaf deze positie. Ik dacht dit te kunnen bereiken met het bovenstaande if-statement en met het [i:3404a5f8f6]self.pageXOffset[/i:3404a5f8f6], maar dat werkt maar half en daarbij alleen in Nutscape. Ook het [i:3404a5f8f6]document.body.OffsetWidth[/i:3404a5f8f6]-attribuut voor IE werkt niet goed. Heeft iemand een idee? Alvast bedankt voor de hulp, :wink: Michiel en Djurre
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...