2012-04-03 66 views
0

任何人都可以告訴我這段代碼有什麼問題嗎?它只是崩潰我的瀏覽器,這一切......「.resize」事件不能與「偏移」一起工作

$(window).resize(function() { 
    var p = $("#outer_wrap"); 
    var offset = p.offset(); 
    alert("left: " + offset.left + ", top: " + offset.top); 
}); 

回答

2

儘量不要使用alert功能,但console.log代替(確保控制檯窗口是打開的),這對我的作品。這可能是由於跨瀏覽器的resize事件的處理引起的(某些瀏覽器連續發送的事件作爲窗口大小調整

jQuery

代碼在resize處理函數不應該依賴於數量處理程序被調用的次數根據實現的不同,調整大小事件可以在調整大小的過程中持續發送(Internet Explorer和基於WebKit的瀏覽器(如Safari和Chrome)中的典型行爲),或者僅在調整大小操作(在Opera等其他瀏覽器中的典型行爲)

0

代碼看起來很好,我想象它會引起你的問題,因爲它會發射這些事件很多。

下面是一個沒有提示但以不同方式輸出結果的示例,它不應該崩潰。

http://jsfiddle.net/TZfeK/

您還可以看到多少次事件被解僱。