2012-08-10 62 views
-1

考慮其中DIV-A具有相對位置DIV-B(實際上,DIV-A由不同Z-指數懸停在的div-B)的情況。當div-B更改的位置,div-C將被插入並且div-A將被隱藏。如何檢測元素的位置發生了變化?

現在的問題是:如何檢測div-B的位置變化

回答

-1

可以在jQuery的使用$ .POSITION方法:

$('#element_id').position().left; 
    $('#element_id').position().top; 

只儲存那些變量,然後主動監測,如果它改變使用setInterval()方法

+0

非常殘酷的做法。假設jQ沒有什麼建議jQ在桌子上。告訴某人如何獲得這個位置,但不知道如何使用它並不是一個答案。對不起,但-1 – 2012-08-10 14:42:58

0

這一切都取決於可引起如果它是一個窗口調整大小window.onresize = function(){}或jQuery $(window).resize(function(){});
如果它是由用戶交互引起的(如點擊和你有什麼):document.body.addEventListener('click',function(){},false);,其中處理程序最好是一個類的閉包,它保存了div的初始位置有問題。
如果是由於ajax調用而插入新內容引起的:請讓onreadystatechange處理程序對其進行分類。再次,最好使用封閉來比較位置與初始值。

可能更容易的CSS3方式,我不是設計師 - 所以我不知道。另外:設置一個你已經嘗試過的東西,你的網頁看起來像一個小提琴。並且對這個問題做更精確的描述。你的問題非常模糊。閱讀FAQ's

+0

我更喜歡一個通用的解決方案,在這裏[鏈接] http://stackoverflow.com/questions/1882224/is-there-an-alternative-to-domattrmodified-that-will-work-in-webkit有一個提示 – 2012-08-11 07:57:22

+0

那如果你有答案,爲什麼問這個問題呢?如果這不能回答您的問題,請再次指明此事件應何時啓動 – 2012-08-11 11:41:22

相關問題