Autor | Zpráva | ||
---|---|---|---|
Strongmann Profil |
#1 · Zasláno: 9. 6. 2013, 22:03:29
Dobrý den,
prosím o pomoc sem s js začátečník respektive totální amatér. Nejdříve tedy můj kód: <script type='text/javascript'> function func1(){ var img1 = document.getElementById('menu-box'); function translate( elem, x, y ) { var left1 = parseInt( css( elem, 'left' ), 10 ), top1 = parseInt( css( elem, 'top' ), 10 ), dx1 = left1 - x, dy1 = top1 - y, i1 = 1, count1 = 50, delay1 = 20; function loop() { if ( i1 >= count1 ) { return; } i1 += 1; elem.style.left = ( left1 - ( dx1 * i1 / count1 ) ).toFixed( 0 ) + 'px'; elem.style.top = ( top1 - ( dy1 * i1 / count1 ) ).toFixed( 0 ) + 'px'; setTimeout( loop, delay1 ); } loop(); } function css( element1, property1 ) { return window.getComputedStyle( element1, null ).getPropertyValue( property1 ); } window.onclick = function ( e ) { var arr; if ( e.target.nodeName === 'A' ) { arr = e.target.title.split( ' ' ); translate( img1, +arr[0], +arr[1] ); } }; } </script> <script type='text/javascript'> function func2(){ var img = document.getElementById('logo_align'); function translate( elem, x, y ) { var left = parseInt( css( elem, 'left' ), 10 ), top = parseInt( css( elem, 'top' ), 10 ), dx = left - x, dy = top - y, i = 1, count = 50, delay = 20; function loop() { if ( i >= count ) { return; } i += 1; elem.style.left = ( left - ( dx * i / count ) ).toFixed( 0 ) + 'px'; elem.style.top = ( top - ( dy * i / count ) ).toFixed( 0 ) + 'px'; setTimeout( loop, delay ); } loop(); } function css( element, property ) { return window.getComputedStyle( element, null ).getPropertyValue( property ); } window.onclick = function ( e ) { var arr; if ( e.target.nodeName === 'A' ) { arr = e.target.title.split( ' ' ); translate( img, +arr[0], +arr[1] ); } }; } </script> <li class="first"><a onclick="func1(),func2();" title="0 80" >O NÁS</a></li> Jde mi o to aby při prokliku na jeden odkaz se anymovalo více divů naráz. Bohužel nyní se spustí jen druhá funkce . Prosím jak udělat s těch dvou funkcí jednu a vůbec jak udělat aby kód byl funkční? Za jakékoli rady budu velice vděčný a předem děkuji! |
||
Someone Profil |
#2 · Zasláno: 9. 6. 2013, 22:09:40
Kód jsem nestudoval, ale co zkusit:
<li class="first"><a onclick="func1();func2();" title="0 80" >O NÁS</a></li> |
||
Storngmann Profil * |
#3 · Zasláno: 10. 6. 2013, 08:20:12
Výsledek je to, že se pustí jen druhá funkce. :(
|
||
pako Profil * |
#4 · Zasláno: 10. 6. 2013, 08:53:53
v kazdej funkcii mas priradenu obsluhu udalosti
click na window cez window.onclick a takuto obsluhu mozes mat pre kazdy element na stranke len raz
pouzi addEventListener /attachEvent
|
||
Časová prodleva: 3 dny
|
|||
peta Profil |
jinymi slovy
window.onclick = 123; // funkce 1 window.onclick = 456; // funkce 2 |
||
Časová prodleva: 11 let
|
0