使用触发器触发
问题描述:
<span id="test">click</span>
$('#test').toggle(function() {
alert('true');
}, function() {
alert('false');
});
$('#test').trigger('click');
这是工作不错,但我想呼吁触发在第二次切换功能 - 用警报(“假”)。现在,它始终是警报('true')。
我该怎么做?我不想更改功能切换 - 只能更改触发器。
答
如果我正确理解你的问题,你要做到这一点,而不必重复第二个切换功能中的代码。为了做到这一点,只需将其移动到一个单独的函数,并且改为调用...
function toggle1() {
alert("true");
}
function toggle2() {
alert("false");
}
$('#test').toggle(function() {
toggle1();
}, function() {
toggle2();
});
toggle2();
我已经把来回切换的两个部分的代码放到单独的功能清晰。如果你愿意,你显然可以将代码从toggle1()
转移到第一个切换功能。
答
为了执行只有一个功能,你不需要切换,你可以使用点击
$('#test').on('click', function(){alert('false')});
你想要什么?它似乎对我来说工作得很好。 – mbinette
'$('#test')。click()。click()';请注意,切换事件已被弃用。 http://jsfiddle.net/v2TXf/ – undefined
实际上,用这种方式使用'toggle()'是不推荐使用的,你应该找出一些其他方法来做你想做的事情,而且肯定有很多。 [FIDDLE](http://jsfiddle.net/xSbTC/1/)... – adeneo