是否可以在JQuery中更改.click()函数?

时间:2013-10-07 15:56:34

标签: javascript jquery

如果我的页面标题中有.click()函数,是否可以在页面后面覆盖它?

例如,如果我在标题中有这个:

<script>
$("document").ready(function() {
    $("a.lol").click(function () { 
        alert("aaa");
    });
});
</script>

是否可以更改$("a.lol")以提醒别人,而不是提醒“aaa”?

5 个答案:

答案 0 :(得分:5)

试试这个,

$("document").ready(function() {
    $("a.lol").click(function () { // initially the click event
        alert("aaa");
    });
    $("a.lol").off('click');// off the click event
    $("a.lol").on('click',function () { // again bind new click event with on()
        alert("new click");
    });
});

阅读on()off()

答案 1 :(得分:3)

您可以使用.unbind(),然后“放回”添加新的处理程序。

$("a.lol").unbind('click');

答案 2 :(得分:1)

使用.off()

$("a.lol").off('click');

并添加回用.on()

$("a.lol").on('click',functionName);

$("a.lol").on('click',function () { 
    //code here
});

答案 3 :(得分:0)

使用$("a.lol").off('click')删除所有点击处理程序。之后,您可以安装新的。

对于旧版本的jQuery,请使用unbind()

答案 4 :(得分:0)

是的,您必须使用off()删除当前处理程序,然后使用新处理程序再次调用click()。

// Some code
$("a.lol").off("click")
$("a.lol").click(function () { 
    alert("ooo");
});

PS:根据您的使用情况,您可以使用one(),这只会触发处理程序一次,然后自行删除