我在这里缺少一些非常简单的东西。我有一个非常简单的事件和一个非常简单的处理程序:
$('#toggler').on('click',function(){
if ($(this).hasClass('choose')) {
$(this).removeClass('choose');
$.ui.hint.turnOn();
}
else {
$(this).addClass('choose');
$.ui.hint.turnOff();
}
});
当我点击它时,它基本上循环,不断添加和删除类。为什么会发生这种情况,我该如何解决? 感谢。
编辑:html:
<div id="toggler">
<a href="#" mode="normal">Вкл.</a>
<div class="hint-switcher">
<div class="hint-switcher-toggle"></div>
</div>
<a href="#" mode="choose">Выкл.</a>
</div>
这是一个简单的开关,只使用css来改变它的状态。
答案 0 :(得分:0)
好的,我发现了问题所在。在我的项目的另一个文件中有一个trigger('click')
,我偶然错过了,导致了这个问题。感谢所有帮助过的人,我很感激。
答案 1 :(得分:-2)
我不确定。但是你应该将必要的参数传递给我猜的函数。您正在使用&#39; ui&#39;没有传递它的对象。试一试吧。
$('#toggler').on('click',function(event,ui){
if ($(this).hasClass('choose')) {
$(this).removeClass('choose');
$.ui.hint.turnOn(); // Problem lies in this line i think. if this doesn't work
}
else {
$(this).addClass('choose');
$.ui.hint.turnOff(); // here too.
}
});
如果不起作用,请忽略我的建议。