我需要在 div1 具有“.selected”类 X 秒后使 div2 可见,并在 div1 失去“.selected”类时恢复为隐藏。解决这个问题的最佳方法是什么?
问问题
103 次
2 回答
1
添加.selected
类后,您可以设置超时以显示 div 2:
setTimeout(function(){
//-- code to show div 2 here --//
}, 2000);
2000 是执行该功能之前等待的时间(以毫秒为单位)。
然后在丢失时.selected
可以再次隐藏 div2 ( hide()
);
于 2013-01-14T15:54:09.497 回答
1
您可以使用以下代码将类名事件侦听器添加到对象以检测更改:
function addClassNameListener(elemId, callback) {
var elem = document.getElementById(elemId);
var lastClassName = elem.className;
window.setInterval( function() {
var className = elem.className;
if (className !== lastClassName) {
callback();
lastClassName = className;
}
},10);
}
如果您愿意,可以调整它以查找某个类名:)
这是它的实际应用:
编辑:这可能是一个中等强度的功能,因为它基本上是检查类是否每 10 毫秒发生变化。
如果在您的情况下可行,那么最好将一个函数添加到任何设置类的 onclick 事件中。这是一个演示:http: //jsfiddle.net/gJgmV/6/
于 2013-01-14T16:17:23.877 回答