0
<span id="test">​click</span>​​​​​​​​​​​​​​

$('#test').toggle(function() {
    alert('true');
}, function() {
    alert('false');
});


$('#test').trigger('click');

​</p>

这工作正常,但我想在切换中调用触发器第二个函数 - 使用alert('false')。现在,它总是alert('true')

我怎样才能做到?我不想更改功能切换 - 只应更改触发器。

http://jsfiddle.net/xSbTC/

4

2 回答 2

1

如果我正确理解了您的问题,您将尝试执行此操作而无需重复第二个切换功能中的代码。为此,只需将其移至单独的函数并调用它...

function toggle1() {
    alert("true");
}
function toggle2() {
    alert("false");
}

$('#test').toggle(function() {
    toggle1();
}, function() {
    toggle2();
});

toggle2();

​ 为了清楚起见,我已将切换两个部分的代码放入单独的函数中。如果您愿意,您显然可以将代码从toggle1()第一个切换函数中移出。

http://jsfiddle.net/xSbTC/4/

于 2012-09-25T09:18:09.020 回答
0

为了只执行一项您不需要切换的功能,您可以使用 click

$('#test').on('click', function(){alert('false')});​
于 2012-09-25T09:04:16.273 回答