1

こちらをご覧ください:http ://www.wunderwedding.com/weddingvenues/search

左側には「その他の都市を表示...」というフィルターがあります。

クリックすると、より多くの都市を表示したい。しかし、今クリックすると、ボックスが展開され、すぐに再び折りたたまれます。何が間違っているのかわかりません。これは、表示/非表示のコードです。

$("#toggle_cities").click(function () {
    if ($("#facets_city").is(":visible")) {
        $("#toggle_cities").text('toon meer steden...');
    }
    else {
        $("#toggle_cities").text('toon minder steden...');
    }
    $("#facets_city").slideToggle("slow");
});
4

4 に答える 4

2

jQuery 1.4.2によってサブスクライブされたクリックイベント(トリガーイベント)_genfunc-1.6.1.jsの252行目で定義された関数

function () {
    if ($("#facets_city").is(":visible")) {
        $("#toggle_cities").text('toon meer steden...');
    }
    else {
        $("#toggle_cities").text('toon minder steden...');
    }
    $("#facets_city").slideToggle("slow");
}

と:

jQuery 1.4.2によってサブスクライブされたクリックイベント(トリガーイベント)myfuncs_en.jsの61行目で定義された関数

function () {
    if ($("#facets_city").is(":visible")) {
        $("#toggle_cities").text('show more cities...');
    }
    else {
        $("#toggle_cities").text('show less cities...');
    }
    $("#facets_city").slideToggle("slow");
}

2つのイベントハンドラーがあります。英語用とオランダ語用だと思いますか?

PSビジュアルイベントブックマークレットは、次のような問題に非常に役立ちます:http ://www.sprymedia.co.uk/article/Visual+Event+2

于 2012-06-24T20:55:39.890 に答える
2

イベントバブリングの可能性があるため、クリックが 2 回発生します。

$("#toggle_cities").click(function (e) {
    e.stopPropagation(); // stops event propagation
    if ($("#facets_city").is(":visible")) {
        $(this).html('toon meer steden...');
    }
    else {
        $(this).html('toon minder steden...');
    }
    $("#facets_city").slideToggle("slow");
});
于 2012-06-24T20:07:54.890 に答える
1

イベントトグルを試してください。http://api.jquery.com/toggle-event/

$("#toggle_cities").toggle(function () {
    $(this).text('toon meer steden...');
    $("#facets_city").slideDown("slow");
},function(){
    $(this).text('toon minder steden...');
    $("#facets_city").slideUp("slow");
});
于 2012-06-24T21:35:45.670 に答える
0

Web インスペクタのスクリプト タブを見ると、3 つの jquery スクリプトがページに埋め込まれています。それらのうちの2つを追い出してから、もう一度試してください。

#facets_city-element は #toggle_cities-element の子要素ではないため、伝播の問題になることはありません。

于 2012-06-24T20:48:18.627 に答える