我想在 if 条件下设置点击事件
var clicked = $('#navs li').click; // but this is clicked automatically
我该怎么办?
我想这样做
if(clicked){
/*code in here*/
}
我对 .on('click')、.trigger('click') 和其他东西有疑问,我正在搜索类似 if event type = click 的东西。
我想在 if 条件下设置点击事件
var clicked = $('#navs li').click; // but this is clicked automatically
我该怎么办?
我想这样做
if(clicked){
/*code in here*/
}
我对 .on('click')、.trigger('click') 和其他东西有疑问,我正在搜索类似 if event type = click 的东西。
你的意思是:
$('#navs li').click(function() {
console.log("i m clicked");
});
那么你的意思是,将点击的内容存储在一些.data()中:
$('#navs li').click(function() {
$(this).data('clicked', true);
});
//and
if($('#navs li').data('clicked')) {
alert("yes, i'm clicked already");
}
为什么不使用 .on():
$('#navs li').on('click', function(){
//code here
});
只需在 if 中添加您要运行的代码。您不需要 if 条件,代码将执行的唯一时间是元素是否被单击。
要检查是否为元素定义了事件单击 jquery 处理程序,您可以使用不公开支持的方法$._data()
if($._data($('#element').get(0),'events').click)
第一个参数是一个 DOM 节点,而不是 jquery 对象。