暂停悬停在简单的jquery旋转木马
pause on hover for simple jquery carousel
我在这里设置了一个超级简单的功能旋转木马示例:
http://codepen.io/anon/full/myvAz问题是,我不能让旋转木马停止旋转悬停。
我甚至不能得到一个警报,以触发悬停在包含div,即使它有一个设置的宽度和高度。然而,如果我将悬停部分粘贴到控制台,我可以得到一个警报。
当与其他代码结合使用时,它似乎不启动。
任何帮助都将不胜感激
感谢下面是代码:<script>
// Main image carousel
$(document).ready(function(){
$("#headerMrS > div:gt(0)").hide();
var carouDiv = function(){
setInterval(function() {
$('#headerMrS > div:first')
.fadeOut(500)
.next()
.fadeIn(500)
.end()
.appendTo('#headerMrS');
}, 2000);
};
$(carouDiv());//Initialise the carousel function
$("#headerMrS").hover(function(){//Stop the carousel on hover
$(this).stop;
},function(){
$(this).resume;
});
//Direction Arrow links
$(".button-sales").click(function(){
$(".header").fadeOut(800);
$(".sales").animate({opacity:"show"},800);
});
$(".button-modern").click(function(){
$(".header").fadeOut(800);
$(".modern").animate({opacity:"show"},800);
});
$(".button-antique").click(function(){
$(".header").fadeOut(800);
$(".antique").animate({opacity:"show"},800);
});
});
<style>
#headerMrS {position:relative; height:150px; width:350px}
.header {position:absolute; top:0; left:0}
</style>
<div id="headerMrS">
<div class="header sales active">
<div class="header-content">
<img src="http://placehold.it/350x150/4787ed/ffffff" alt="" />
<div class="button-next button-antique">next</div>
<div class="button-prev button-modern">prev</div>
</div>
</div>
<div class="header antique">
<div class="header-content">
<img src="http://placehold.it/350x150/fc8a41/ffffff" alt="" />
<div class="button-next button-modern">next</div>
<div class="button-prev button-sales">prev</div>
</div>
</div>
<div class="header modern">
<div class="header-content">
<img src="http://placehold.it/350x150/e7376b/ffffff" alt="" />
<div class="button-next button-sales">next</div>
<div class="button-prev button-antique">prev</div>
</div>
</div>
使用clearInterval()
如何?
不是简单地调用setInterval()
,而是将setInterval()
函数分配给一个变量,下面我使用carouselInt
。这对于调用clearInterval()
是必要的。要停止间隔,可以调用clearInterval(carouselInt)
从我刚刚读到的,stop()
将停止当前的动画,但你有一个新的动画每2秒。它对setInterval没有明显的影响,它会导致动画触发。
您可以尝试以下操作:
var carouselInt = '';
var carouDiv = function(){
carouselInt = setInterval(function() {
$('#headerMrS > div:first')
.fadeOut(500)
.next()
.fadeIn(500)
.end()
.appendTo('#headerMrS');
}, 2000);
};
$(carouDiv());//Initialise the carousel function
$("#headerMrS").hover(function(){//Stop the carousel on hover
clearInterval(carouselInt);
},function(){
carouDiv();
});
似乎你有一个未关闭的脚本标签周围的第63行HTML -这可能是问题?
相关文章:
- 带有JQuery和CSS的3D旋转木马-渲染不正确
- jQuery的正确使用?猫头鹰旋转木马
- jQuery UI滑块干扰光滑的旋转木马
- jquery mobile的内容旋转木马
- Jquery幻灯片中的列表,连接第一个和最后一个列表元素以创建旋转木马
- 通过jquery损坏的旋转木马添加css样式
- Angular 和 JQuery 循环 2 旋转木马碰撞
- JQuery 旋转木马是跳跃的
- jQuery-旋转木马安装问题
- jQuery旋转木马插件与WowSlider类似且更轻
- 左侧动画上的JQuery旋转木马延迟
- 如何通过onmouseover事件停止jquery旋转木马
- jQuery旋转木马问题:如何阻止缩略图前进
- Jquery旋转木马为一个引导网站覆盖我的页面滚动
- 页面上的多个jQuery旋转木马
- Jquery旋转木马闪烁图像问题
- jQuery旋转木马滚动
- jQuery旋转木马插件显示不需要的边框
- 从头开始制作jquery旋转木马
- 暂停悬停在简单的jquery旋转木马