2016-07-26 22 views
0

我想改變WordPress的響應,引導主題中的默認崩潰行爲,但我相當確定我的問題特別與Bootstrap有關。從手機菜單按鈕中刪除javascript事件

當屏幕寬度減小並點擊移動菜單圖標(漢堡包)時,將觸發摺疊菜單。我想刪除此JavaScript觸發器事件並創建一個新的自定義事件。

在主題按鈕的HTML是:

 <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> 
      <span class="sr-only">Toggle navigation</span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
     </button> 

我曾嘗試使用下面的JavaScript刪除默認的情況下嘗試,但沒有運氣:

$('button.navbar-toggle').unbind(); 
$('button.navbar-toggle').off(); 

我也曾嘗試運用()和off()方法添加到按鈕中的跨度,但是再次沒有運氣。

我將非常感謝任何幫助。

+0

你應該在Chrome中打開開發工具來檢查主題,然後檢查事件 – kollein

+0

謝謝科林,這是有幫助的。我之前曾在Chrome中嘗試過檢查員,但卻愚蠢地啓用了「祖先」。當我禁用時,我可以找到要禁用的事件。 –

+0

如果要刪除事件集<按鈕data-toggle:empty>或使用preventDefault禁用。 – kollein

回答

0

我認爲這可能有用。您也可以使用窗口大小調整功能。

// detect if your screen is smaller 
if ($('body').width() > 960){ 
// intercept click event 
    $('.item').click(function(){ 
    //do some stuff 
    }) 
}else{ 
    // intercept click event for larger screens 
    $('.item').click(function(){ 
    //do another stuff 
    }) 
} 
+0

這對您有幫助嗎?請編輯,以解釋爲什麼這解決了用戶的問題! – Pureferret

+0

現在夠了嗎? –

+0

如果jQuery沒有這樣做,我會提到'preventDefault'。 – Pureferret

0

根據我的openion,你不應該打擾綁定和解除綁定移動設備和桌面的不同功能。

我建議做一個單一的功能,可以在其中查看設備類型(無論是手機或臺式機),你可以參考this link用於檢查設備類型

,並根據這一點,你可以觸發不同的功能,如你所願。

希望這個解決方案適合你。

+0

感謝您的回答AdiechaHK。我的問題是,我試圖觸發菜單以不同的方式出現(從頁面右側作爲覆蓋層滑入,而不是將內容推到左側)。我可以在Firefox中通過附加一個新的事件,但在Chrome中,事件被觸發了兩次,我認爲這是因爲綁定到元素的現有envent,但這可能是不正確的。 –