|
|
|
| Задача, сделать так чтобы при нажатии на слой, он "выезжал" на 300px вправо, при повторном нажатии "уезжал" обратно.
Код
<script language="javascript">
function Myfun() {
document.getElementById('pic').style.left = (document.getElementById('pic').style.left == '') ? '300' : '';
}
</script>
<img src="1.jpg" id="pic" style="position:relative" onClick="Myfun();">
|
Работает ПОЧТИ правильно. За исключением того что Картинка не "ездит", а просто появляется
Добавляю в конце функции
setTimeout('Myfun()', 5000);
|
и кртинка при нажатии просто скачет каждые пять сек. туда сюда.
Что то не могу разобраться толком с сеттаймаутом, памагите люди, столько времени уже убил :( | |
|
|
|
|
|
|
|
для: neokortex
(26.11.2007 в 13:47)
| |
<script>
function updatemsg(inc){
//crossobj.style.left="-367px"
path0 = inc.split(".");
path = path0.join("_b.");
crossobj.innerHTML="<div id=stand style=\"z-index: 100; width: 367; height: 280; background-image: url('" + inc + "');border: #c6c6c6 1px solid; border-right: #221e1f 4px solid; border-left: none;'\"><div id=flyin style=\"position:relative; top:-1; left:-1; width:367; height:280;padding:0; margin:0;\"><a href=\"" + path + "\" target=_blank ><img src='" + inc + "' width=367 height=280 border=0></a></div></div>";
crossobj.style.left=crossobj.offsetWidth*(-1) +"px"
start=setInterval("animatein()",100)
}
function animatein(){
if (parseInt(crossobj.style.left)<0)
crossobj.style.left=parseInt(crossobj.style.left)+20+"px"
else{
crossobj.style.left=0+"px"
clearInterval(start)
}
}
function initialize(inc){
crossobj=document.getElementById? document.getElementById("flyin") : document.all.flyin
updatemsg(inc)
}
</script>
<a href=# onclick="initialize('picture_url'); return false;" >click here</a>
|
| |
|
|
|
|
|
|
|
для: elenaki
(26.11.2007 в 14:00)
| | :(
не работает, а попроще никак нельзя? | |
|
|
|
|
|
|
|
для: neokortex
(28.11.2007 в 16:14)
| | хм. у меня работает. вот пример (фотка выползает по наведению мыша на превьюшку) | |
|
|
|