我想知道是否有可能在 jQuery 中知道一个元素是否被点击或 hasClass()
这是我尝试过但没有成功的方法
if($('.subCat span[data-value="all"]').hasClass('checked') || $('.subCat span[data-value="all"]').click()){
alert('woohoo');
}
那么我该如何实现呢?我需要在单击时执行脚本,或者如果它具有所需的类。
谢谢
我想知道是否有可能在 jQuery 中知道一个元素是否被点击或 hasClass()
这是我尝试过但没有成功的方法
if($('.subCat span[data-value="all"]').hasClass('checked') || $('.subCat span[data-value="all"]').click()){
alert('woohoo');
}
那么我该如何实现呢?我需要在单击时执行脚本,或者如果它具有所需的类。
谢谢
你需要的是一个点击事件,而不是一个 if 语句。
$('.subCat').on("click", 'span[data-value="all"].checked', function(){
alert("woohoo foobar");
});
要判断它是否被点击,您需要添加一个事件处理程序
$(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");
});
});
如果您需要该功能在单击时以及最初为具有选中类的元素运行,我建议这样做:
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();
});
});