2014-02-15 26 views
0

我的嘗試是根據窗口大小是否低於767切換標頭的兄弟姐妹。這是一個響應式設計,所以我把一個綁定在負載和調整事件大小。但是,當我點擊我的標題時,我正在獲得多個發射。jquery在RWD加載和調整大小多個執行

jQuery(window).bind('load resize', function($) { 

    if(jQuery(window).width() < 767) { 

    jQuery('footer h2').siblings().hide();   
    jQuery('footer h2').on('click', function() {        
     jQuery(this).siblings().slideToggle(); 
}); 

    } else { 
    jQuery('footer h2').unbind('click'); 
    jQuery('footer h2').siblings().show(); 
    }        
}); 

基本上圖像向下滾動和向上。

+0

你說你正在使用RWD,那麼爲什麼你使用jQuery呢?在767px添加一個媒體斷點,並使用'display:none' –

+0

對RWD還是一個新的樣式。有時我只是覺得'嘿,我可以做',因爲我過去這樣做了。你有什麼好的例子可以看看嗎? –

回答

0

那麼,有一個問題可能是,每次窗口大小調整時(如果新寬度爲< 767),您都要綁定一個點擊處理程序。因此,如果您已經小於767,並且調整到小於767的另一個寬度,則會有多個點擊處理程序綁定。

+0

所以我只是解除任何點擊事件的選擇器'jQuery('footer h2')。unbind('click');'這似乎解決了我的問題。然而,這是正確的做法嗎?這被插入在'if'語句之前,從而消除'else'中的解除綁定 –

相關問題