您最初的问题是因为您正在设置而引起的#example1
不显示任何内容;
#example1 {
background: green;
display: none;
}
然后你打电话来
$('#example1').hoverwords();
这导致了空白背景。
所以只需删除display:none;
CSS 和调用hoverwords
on example1
在它被隐藏之前。
$('#example1').hoverwords();
$('#example2').hoverwords();
$('#example1').hide();
然后使用jQuery后隐藏它。
看来您的工作解决方案中有类似的解决方案Update 4
http://jsfiddle.net/trevordowdle/KuW6K/15/ http://jsfiddle.net/trevordowdle/KuW6K/15/
虽然它运行良好,但您仍然可以触发错误。发生这种情况时hovering back and forth
和setInterval
同时触发。如果几乎同时运行,触发器和悬停词功能的切换会相互干扰,并且您不会获得所需的结果。
一种选择是在单词悬停时阻止单词发生变化。
Like:
jQuery
var hover = false;
setInterval(function () {
if(!hover){
$('#example1').toggle();
$('#example2').toggle();
}
}, 3000);
$('#example1').hoverwords();
$('#example2').hoverwords();
$('#example1').hide();
$('.sl_examples').hover(function(){
hover = true;
},function(){
hover = false;
});
CSS
#example1 {
background: green;
}
http://jsfiddle.net/trevordowdle/KuW6K/14/ http://jsfiddle.net/trevordowdle/KuW6K/14/
如果您希望它重置计时器。这意味着一旦您完成悬停,3 秒计时器就会从 0 开始。这是另一个示例:
http://jsfiddle.net/trevordowdle/KuW6K/16/ http://jsfiddle.net/trevordowdle/KuW6K/16/