2012-06-22 64 views
1

我在html中有動畫div。它在每秒中爲div添加1px,現在我想要如果我的div的正確位置達到15,那麼一個警報框應該說「hiii」。我做了一個小功能,但它不工作。如何在瀏覽器上運行函數時獲取值

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 

<style> 

.wrap { border:solid 1px #F00; width:1000px; height:300px; overflow:hidden; position:relative} 

.box { width:200px; height:200px; background:#00F; position:absolute} 
</style> 


<script type="text/javascript" src="jquery-1.7.2.js"></script> 

<script type="text/javascript"> 


var left=5; 

$(function aniMation(){ 




    $('.box').css({right:++left}) 
    setTimeout(aniMation,1000) 

    }) 



$(function(){ 

    var box= $(".box").css("right") 

    if(box=="10px"){ 

     alert("hiii") 

     } 


    }) 





</script> 


</head> 


<body> 

<div class="wrap"> 

<div class="box"></div> 

</div> 

</body> 
+1

「它不工作」是不夠的信息。告訴我們你在看什麼,爲什麼它是錯的。 –

+0

先生,我的動畫div每秒都在右移,當我div的右邊位置達到10px沒有任何事情發生時,它應該提醒框 – Carlos

回答

3

我不認爲你實際上調用該功能,而不是頁面加載!

docs


的jQuery(回調)

簡寫爲$(文件)。就緒()。 允許您綁定在DOM文檔加載完成時執行的函數。


我檢查了你在我的瀏覽器(谷歌瀏覽器)的控制檯中調用的行,他們似乎工作。問題在於該函數僅在頁面加載時執行一次,在檢查爲真之前。

1

當頁面就緒此功能運行一次,然後再也沒有運行:如果您想查詢div的位置

$(function(){ 
    var box= $(".box").css("right") 

    if(box=="10px"){ 
     alert("hiii") 
     } 
    }) 

,你必須這樣做反覆,也許在同一個函數正在移動div。

相關問題