如何在函数中包含click事件?

时间:2013-09-23 10:00:38

标签: jquery

我想在条件

中设置click事件
var clicked = $('#navs li').click; // but this is clicked automatically 

我该怎么办?

我想这样做

if(clicked){
/*code in here*/
}

我遇到.on('click'),.trigger('click')以及我正在搜索的其他内容的问题,如果事件类型=点击。

3 个答案:

答案 0 :(得分:2)

你的意思是:

$('#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");
}

答案 1 :(得分:1)

为什么不使用.on():

$('#navs li').on('click', function(){
 //code here
});

只需添加您要运行的代码即可。您不需要if条件,代码执行的唯一时间是单击该元素。

答案 2 :(得分:0)

要检查是否为元素定义了事件单击jquery处理程序,可以使用非公开支持的方法$._data()

if($._data($('#element').get(0),'events').click)

第一个参数是DOM节点,而不是jquery对象。