Jquery 如何在鼠标悬停时立即停止jcarousel并继续鼠标悬停
我试图用一个动作(在本例中是悬停)来停止转换,但我不知道如何实现它。 这就是我进行测试的地方: 我有3个Jquery 如何在鼠标悬停时立即停止jcarousel并继续鼠标悬停,jquery,css,jcarousel,Jquery,Css,Jcarousel,我试图用一个动作(在本例中是悬停)来停止转换,但我不知道如何实现它。 这就是我进行测试的地方: 我有3个jcarousel实例,我的目标是(立即)停止鼠标上方的移动。 问题是:当鼠标在旋转木马上时,我将其停止,但当前的转换在停止之前结束,并且感觉不是所需的,我希望在鼠标上方立即停止移动 这是第一个转盘的初始化: $('#jcarousel1') .jcarousel({ 'animation': { 'duration': 6000, //DEFINE SPEED
jcarousel
实例,我的目标是(立即)停止鼠标上方的移动。
问题是:当鼠标在旋转木马上时,我将其停止,但当前的转换在停止之前结束,并且感觉不是所需的,我希望在鼠标上方立即停止移动
这是第一个转盘的初始化:
$('#jcarousel1')
.jcarousel({
'animation': {
'duration': 6000, //DEFINE SPEED
'easing': 'linear',
'complete': function() {
//ON ANIMATION COMPLETE ACTION GO HERE
}
},
'wrap': 'circular'
}).jcarouselAutoscroll({
interval: 1,
target: '+=1',
autostart: true
}).on('mouseover',function(e){
$(this).jcarouselAutoscroll('stop');
}).on('mouseout',function(e){
$(this).jcarouselAutoscroll('start');
});
jcarousel的其他两个实例类似
更新:
我已经试过了:
$('#jcarousel1').jcarousel('list').stop();
这会停止移动(滚动),但我无法在鼠标离开之前的相同位置再次开始移动
更新1:
我还尝试了mouseout(并使其再次工作)
但这有一个不希望的效果,因为从旋转木马的开始(重新加载)开始移动,从第一个项目开始,我想从鼠标悬停时的相同位置重新启动 你可以用这样的东西
<script type="text/javascript" src="jquery.jcarousel.min.js"></script>
<script type="text/javascript">
function mycarousel_initCallback(carousel)
{
// Pause autoscrolling if the user moves with the cursor over the clip.
carousel.clip.hover(function() {
carousel.stopAuto();
}, function() {
carousel.startAuto();
});
};
jQ=jQuery.noConflict();
jQ(document).ready(function() {
jQ('#mycarousel').jcarousel({
auto: 3,
animation: 1000,
scroll: 1,
easing: "linear",
wrap: 'circular',
initCallback: mycarousel_initCallback
});
});
</script>
函数mycarousel_initCallback(carousel)
{
//如果用户将光标移到剪辑上,则暂停自动滚动。
carousel.clip.hover(函数(){
carousel.stopAuto();
},函数(){
旋转木马startAuto();
});
};
jQ=jQuery.noConflict();
jQ(文档).ready(函数(){
jQ(“#mycarousel”).jcarousel({
汽车:3,,
动画:1000,
卷轴:1,
放松:“线性”,
包装:“圆形”,
initCallback:mycarousel_initCallback
});
});
从您的示例中可以看出,您已经让它正常工作了。你可以发布你的答案吗?我可以ctrl+u没有问题,但我希望发布解决方案(针对社区)。根据你的链接,看起来你解决了问题,对吗?
<script type="text/javascript" src="jquery.jcarousel.min.js"></script>
<script type="text/javascript">
function mycarousel_initCallback(carousel)
{
// Pause autoscrolling if the user moves with the cursor over the clip.
carousel.clip.hover(function() {
carousel.stopAuto();
}, function() {
carousel.startAuto();
});
};
jQ=jQuery.noConflict();
jQ(document).ready(function() {
jQ('#mycarousel').jcarousel({
auto: 3,
animation: 1000,
scroll: 1,
easing: "linear",
wrap: 'circular',
initCallback: mycarousel_initCallback
});
});
</script>