我有一个按钮,它切换下面的一个
<div>
的可见性,并想根据所述<div>
的可见性修改按钮上的文本。
这里有一个实时演示 jsFiddle
如果你点击“Saved Data”,第一次它可以正确工作,但是下一次点击时文本不会改变。这本身就是我不理解的行为。
现在,我可以使用多个slideToggle()
处理程序,然而,在代码的其他地方,我还设置了间隔,加载“Cookie data:”和“Server data:”旁边的数据。如果<div>
不可见,我不希望这些间隔执行任何操作,因此我使用类似于以下内容:
this.timer_cookiedata = setInterval(function(){
if (!$savedData.is(':visible'))
{
return null;
}
// ..
});
我担心这些间隔不会正常工作,因为这个is(':visible')
的问题。所以问题是,为什么会发生这种情况(else语句被忽略),我该怎么做才能减轻这种情况?