考慮其中DIV-A具有相對位置DIV-B(實際上,DIV-A由不同Z-指數懸停在的div-B)的情況。當div-B更改的位置,div-C將被插入並且div-A將被隱藏。如何檢測元素的位置發生了變化?
現在的問題是:如何檢測div-B的位置變化?
考慮其中DIV-A具有相對位置DIV-B(實際上,DIV-A由不同Z-指數懸停在的div-B)的情況。當div-B更改的位置,div-C將被插入並且div-A將被隱藏。如何檢測元素的位置發生了變化?
現在的問題是:如何檢測div-B的位置變化?
可以在jQuery的使用$ .POSITION方法:
$('#element_id').position().left;
$('#element_id').position().top;
只儲存那些變量,然後主動監測,如果它改變使用setInterval()
方法
這一切都取決於可引起如果它是一個窗口調整大小window.onresize = function(){}
或jQuery $(window).resize(function(){});
如果它是由用戶交互引起的(如點擊和你有什麼):document.body.addEventListener('click',function(){},false);
,其中處理程序最好是一個類的閉包,它保存了div的初始位置有問題。
如果是由於ajax調用而插入新內容引起的:請讓onreadystatechange
處理程序對其進行分類。再次,最好使用封閉來比較位置與初始值。
可能更容易的CSS3方式,我不是設計師 - 所以我不知道。另外:設置一個你已經嘗試過的東西,你的網頁看起來像一個小提琴。並且對這個問題做更精確的描述。你的問題非常模糊。閱讀FAQ's
我更喜歡一個通用的解決方案,在這裏[鏈接] http://stackoverflow.com/questions/1882224/is-there-an-alternative-to-domattrmodified-that-will-work-in-webkit有一個提示 – 2012-08-11 07:57:22
那如果你有答案,爲什麼問這個問題呢?如果這不能回答您的問題,請再次指明此事件應何時啓動 – 2012-08-11 11:41:22
非常殘酷的做法。假設jQ沒有什麼建議jQ在桌子上。告訴某人如何獲得這個位置,但不知道如何使用它並不是一個答案。對不起,但-1 – 2012-08-10 14:42:58