Autor | Zpráva | ||
---|---|---|---|
Watchick Profil |
#1 · Zasláno: 29. 9. 2008, 15:21:47
Zdravím, chtěl ybch se zeptat, jestli neznáte nějaké stránky, kse by se dal sehnat JS script, kterej by pomalu přijel s DIVem z pravá strany a tastavil by se na okraji (hned v pravo)?
Chtěl Bych takhle oživit stránky reklamou, aby byla trocchu v pohybu, aby změnila místo, respektive nyní i efekt... díky |
||
Watchick Profil |
#2 · Zasláno: 29. 9. 2008, 17:54:23 · Upravil/a: Watchick
Mám script:
<script language="JavaScript1.2"> ie=document.all?1:0 n=document.layers?1:0 ns6=document.getElementById&&!document.all?1:0 //These are the variables you have to set: //How much of the layer do you wan't to be visible when it's in the out state? lshow=60 //How many pixels should it move every step? var move=10; //At what speed (in milliseconds, lower value is more speed) menuSpeed=40 //Do you want it to move with the page if the user scroll the page? var moveOnScroll=true var ltop; var tim=0; //Object constructor function makeMenu(obj,nest){ nest=(!nest) ? '':'document.'+nest+'.' if (n) this.css=eval(nest+'document.'+obj) else if (ns6) this.css=document.getElementById(obj).style else if (ie) this.css=eval(obj+'.style') this.state=1 this.go=0 if (n) this.width=this.css.document.width else if (ns6) this.width=document.getElementById(obj).offsetWidth else if (ie) this.width=eval(obj+'.offsetWidth') this.left=b_getleft this.obj = obj + "Object"; eval(this.obj + "=this") } //Get's the top position. function b_getleft(){ if (n||ns6){ gleft=parseInt(this.css.left)} else if (ie){ gleft=eval(this.css.pixelLeft)} return gleft; } function moveMenu(){ if(!oMenu.state){ clearTimeout(tim) mIn() }else{ clearTimeout(tim) mOut() } } //Menu in function mIn(){ if(oMenu.left()>-oMenu.width+lshow){ oMenu.go=1 oMenu.css.left=oMenu.left()-move tim=setTimeout("mIn()",menuSpeed) }else{ oMenu.go=0 oMenu.state=1 } } //Menu out function mOut(){ if(oMenu.left()<0){ oMenu.go=1 oMenu.css.left=oMenu.left()+move tim=setTimeout("mOut()",menuSpeed) }else{ oMenu.go=0 oMenu.state=0 } } function checkScrolled(){ if(!oMenu.go) oMenu.css.top=eval(scrolled)+parseInt(ltop) if(n||ns6) setTimeout('checkScrolled()',30) } function menuInit(){ oMenu=new makeMenu('divMenu') if (n||ns6) scrolled="window.pageYOffset" else if (ie) scrolled="document.body.scrollTop" oMenu.css.left=-oMenu.width+lshow if (n||ns6) ltop=oMenu.css.top else if (ie) ltop=oMenu.css.pixelTop oMenu.css.visibility='visible' if(moveOnScroll) ie?window.onscroll=checkScrolled:checkScrolled(); } window.onload=menuInit; </script> a <div id="divMenu" style="position:absolute; top:250; left:30; visibility:hidden; background-color:ffffff"> <nobr> <script type="text/javascript"><!-- google_ad_client = "********************"; /* 468x60, vytvořeno 20.9.08-************ banner */ google_ad_slot = "********"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></a> <a href="javascript://" onclick="moveMenu()" style="background-color:white;text-decoration:none">- Klikni</a> </nobr> Jak by šel předělat na to, aby se ten Div prostě přisunul hedn po načtení stránky a ne, až po kliku? |
||
Bubák Profil |
#3 · Zasláno: 29. 9. 2008, 17:57:56
Šlo by to, můžeš využít JS událost tagu BODY, onload.
|
||
Watchick Profil |
#4 · Zasláno: 29. 9. 2008, 18:25:45
jo to sjem zkouešl <body onload="moveMenu()">, teda pokud je to takdobře a nic..
|
||
Nox Profil |
#5 · Zasláno: 29. 9. 2008, 19:58:02
FF plugin Firebug atp., dostaneš echo o chybách
|
||
Watchick Profil |
#6 · Zasláno: 30. 9. 2008, 14:34:06
Ahoj, odkaz an stránky je
http://travian3.damak.cz/test/menu.php ale nejde mi to a firebug nic nenasel (teda pokud jsem to správně otestoval), tak jestli tam nemam nějakou zásadní chybu? |
||
Chamurappi Profil |
#7 · Zasláno: 30. 9. 2008, 14:56:46
Reaguji na Watchicka:
Přidej „moveMenu()“ na konec funkce „menuInit“. |
||
Watchick Profil |
#8 · Zasláno: 30. 9. 2008, 15:11:05
Přidáno... nevíám, jsetli jsem to tam dal dobře, ale nereaguje
|
||
Chamurappi Profil |
#9 · Zasláno: 30. 9. 2008, 15:16:07
Reaguji na Watchicka:
Nereaguje, protože to „moveMenu()“ v atributu onload zruší dříve nastavené volání „menuInit“. Proto jsem ti napsal, abys volání moveMenu strčil do menuInit, ale zapomněl jsem dodat, že bys ho měl smazat z onload. |
||
Watchick Profil |
#10 · Zasláno: 30. 9. 2008, 16:41:02
Díky moc, už to funguje BTW dá se nějak ošetřit, že pokud by uživatel neměl zapnutý JS, tak že se div zobrazí na svém místě bez prováděných efektů?
|
||
peta Profil |
#11 · Zasláno: 1. 10. 2008, 07:59:30
style="position:absolute; top:250; left:30; visibility:hidden;
ze by smazat visibility hidden? |
||
Watchick Profil |
#12 · Zasláno: 1. 10. 2008, 16:01:31
jo... jasně.. .díky moc :-)
|
||
Meldo Profil |
#13 · Zasláno: 1. 10. 2008, 17:10:56
A co tak pouzit kniznicu JQuery? http://docs.jquery.com/Main_Page
|
||
Časová prodleva: 24 dní
|
|||
tone Profil * |
#14 · Zasláno: 25. 10. 2008, 16:06:05
... jak by se dalo udělat aby nepřijížděl, ale aby se po načtení stránky zobrazil vycentrovaný svisle i vodorovně ... a při zmenšování okna (onresize) by se stále centroval?? dík za odpověď
|
||
Časová prodleva: 15 let
|
0