3

要素がクリックされたかどうか、または hasClass() かどうかをjQueryで知ることができるかどうか疑問に思っていました

これは私が成功せずに試したことです

if($('.subCat span[data-value="all"]').hasClass('checked') || $('.subCat span[data-value="all"]').click()){
        alert('woohoo');
    }

では、どうすればこれを達成できますか?クリックしたとき、または必要なクラスがある場合にスクリプトを実行する必要があります。

ありがとう

4

3 に答える 3

2

必要なのはクリックイベントであり、ifステートメントではありません。

$('.subCat').on("click", 'span[data-value="all"].checked', function(){
    alert("woohoo foobar");
});
于 2012-08-27T20:39:05.587 に答える
1

クリックされたかどうかを確認するには、イベント ハンドラーを追加する必要があります。

$(document).on("click",'.subCat span[data-value="all"]', function(){
    alert("I was clicked");
});

必須クラスかどうかを通知するイベントはありません。ページがいつ読み込まれたかを確認したい場合は、それよりも実行できます。

$( function() {
    $('.subCat span[data-value="all"]').filter('.checked').each( function(){
        alert("I have a checked class at ready");
    });
});
于 2012-08-27T20:40:16.697 に答える
1

チェックされたクラスを持つ要素に対して、クリック時と最初に関数を実行する必要がある場合は、次のことをお勧めします。

function doStuff() {
    alert('woohoo');
}

$(document).ready(function() {
    // This will wire up a click event. When the matching elements are clicked,
    // the doStuff function will run.
    $('.subCat span[data-value="all"]').click(doStuff);

    // This will call the doStuff function for every matched element on the
    // document ready.
    $.each($('.subCat span[data-value="all"].checked'), function(index, value) {
        doStuff();
    });
});
于 2012-08-27T20:42:48.177 に答える