相关疑难解决方法(0)

为什么在页面加载时会立即触发click事件处理程序?

我正在玩一个我想要绑定到所有链接的函数.目前,该功能在页面加载时触发,而不是在我点击链接时触发.

这是我的代码.(showDiv()如果你需要看的话,我可以在函数中过去.)你能告诉我这里做错了什么或傻吗?

$(document).ready(function(){

    $('a.test').bind("click", showDiv());

});
Run Code Online (Sandbox Code Playgroud)

谢谢

jquery bind

38
推荐指数
3
解决办法
3万
查看次数

click事件的事件处理程序自动触发 - jQuery

可能重复:
为什么点击事件处理程序会在页面加载后立即触发?

我对Javascript函数的理解存在差距所以我很难理解为什么我的事件处理程序在没有匿名包装器的情况下定义它会自动触发.

HTML

<a href="#" id="change-html">Change HTML</a>
Run Code Online (Sandbox Code Playgroud)

Javascript#1

var btn = $('#change-html');
btn.click(bindClick(btn)); // bindClick gets executed right away and only once

function bindClick(source){
    console.log('get here');
}
Run Code Online (Sandbox Code Playgroud)

Javascript#2

var btn = $('#change-html');
btn.click(function(){
    bindClick(btn); // bindClick is only executed on the anchor's click event 
});

function bindClick(source){
    console.log('get here');
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery function

3
推荐指数
1
解决办法
5711
查看次数

标签 统计

jquery ×2

bind ×1

function ×1

javascript ×1