解除绑定和绑定帮助用户定义函数



我试图有一个按钮改变图像时,点击,然后更改回当用户再次点击。我在stackoverflow上看到了一个绑定和解绑定的例子(这里)但是我把函数弄乱了看起来我不能做

$('a#fav').bind('click','addFav');

上面的代码片段不会在click时运行事件,但是如果我这样做

    $('a#fav').bind('click',function(){
    alert('test');
});

它会工作的。有人可以帮助我得到一个用户定义的函数与。bind和。unbind工作,就像它是如何在例子中?

谢谢

不要使用字符串作为函数引用,它会工作的:

function addFav(e) {
    e.preventDefault();
    alert('called');
    return false;
}
$(document).ready(function() {
    $('a#fav').bind('click', addFav);
})

下面是一个例子:http://jsfiddle.net/BpGXD/

下面是一个unbind的例子:http://jsfiddle.net/BpGXD/2/

bind以一个函数引用作为第二个参数。你在你的例子中传递的是一个字符串,所以它不会工作。你可以定义函数,然后传递函数名或者你也可以直接传递匿名函数作为第二个参数当事件触发时执行

function addFav(){
   alert("click fired");
}
$('a#fav').bind('click', addFav);
//Or
$('a#fav').bind('click', function(){
   alert("click fired");
});

相关内容

  • 没有找到相关文章

最新更新