2017-06-19 30 views
0

的URL是http://development-client-server.com/dreamscience/product-category/models/focus/focus-st/focus-st225-mk2/和問題是與藍色的按鈕,上面寫着「過濾器產品」後工作在移動。如果你在手機上打開它,點擊「Model」打開並關閉。其他人也一樣。但是,如果你打開「模型」,然後嘗試打開另一個,說「類別」切換不再起作用。jQuery的顯示/隱藏切換停止第一火災

我試過toggleClass(),切換()的slideToggle()和直上顯示()和hide()和用於噸不同形式的摸索。我也嘗試改變「點擊」到「touchstart點擊」,只是使用「touchstart」沒有任何改變。

它正常工作,經常與電腦屏幕降低到移動的大小上。它在運行最新版本的iPhone Safari上不起作用。

下面是腳本的當前版本:

function mobileFiltering() { 
 
    $(document).on("click", ".prdctfltr_regular_title", function() { 
 
    var status = $(this).hasClass('active'); 
 
    if (status) { 
 
     $(this).removeClass('active'); 
 
     $(this).next().hide(); 
 
    } else { 
 
     $(this).addClass('active'); 
 
     $(this).next().show(); 
 
    } 
 
    }); 
 
} 
 

 
if ($(window).width() < 975) { 
 
    mobileFiltering(); 
 
} else { 
 
    $('.prdctfltr_regular_title').unbind(); 
 
} 
 

 
$(window).resize(function() { 
 
    if ($(window).width() < 975) { 
 
    mobileFiltering(); 
 
    } else { 
 
    $('.prdctfltr_regular_title').unbind(); 
 
    } 
 
});

而且什麼是更奇怪的是,如果我刪除的顯示/隱藏切換,只是有removeClass/addClass功能,它工作正常。

希望對此有所幫助,因爲它似乎是我在移動設備上使用的每個切換的問題。

+0

你有一個jQuery錯誤:類型錯誤:a.indexOf不是一個函數 – Korgrue

+0

我不認爲這是個問題(這是與別的東西) - 它適用於臺式機和第一把火罰款?如果您關閉過濾器,並嘗試選擇不同的過濾器 –

+0

您還可以得到一個第二個錯誤。 products.offset(...)未定義 – Korgrue

回答

1

這似乎是由事件通過事件代表團射擊次數太多造成的設置你,我的建議是使用stopPropagation停止所有其他事件。

像這樣:

function(e) { 
    e.stopPropagation(); 
    e.stopImmediatePropagation(); 

希望這有助於!

+0

謝謝謝謝SOOOO了! –