jQuery事件作业题 1-15 关于mouseover的问题

jQuery事件作业题 1-15 关于mouseover的问题

我已经提交了我的作业题,我发现一个问题,我在chrome浏览器测试是正常的,在safari上的时候,mouseover到main的时候,图片轮播的定时器没有清楚,这是兼容性问题吗?怎么解决?我的js代码如下


var index = 0,

timer = null,

len = $('.pic').length;

$(document).ready(function() {

var main = $('.main');

//鼠标滑入轮播区时,清除定时器

main.mouseover(function(){

if (timer) {

clearInterval(timer);

}

});

//鼠标滑出轮播区时,触发间隔定时器

main.mouseout(function(){

timer = setInterval(function() {

index++;

if (index >= len) {

index = 0;

}

// console.log(index);

changeImg();

},2000);

});

main.mouseout();

//鼠标移入移出左右切换按钮是,按钮背景颜色发生改变。

$('.left, .right').mouseover(function() {

$(this).css('background',"#bbb");

});

$('.left, .right').mouseout(function() {

$(this).css('background',"");

});

//鼠标点击左按钮时,背景图片切换。

$('.left').click(function() {

index--;

if(index<0){

index=4;

}

console.log(index);

changeImg();

});

//鼠标点击右按钮时,背景图片切换。

$('.right').click(function() {

index++;

if(index>4){

index=0;

}

changeImg();

});

$('.dots div').click(function() {

index = $(this).index();

changeImg();

});

});

//changeImg()负责图片轮播效果,这里用的是hide()、show()的方法

function changeImg() {

$('.pic').each(function(){

$(this).hide();

});

$('.dots div').each(function() {

$(this).css({

'background':'#bbb',

'border':'2px solid #fff'

});

$('.dots div').removeClass('borderActive')

})

// //根据index索引找到当前div,将其显示出来

$('.pic').eq(index).show();

$('.dots div').eq(index).css({

'background':'#fff',

'border':'2px solid #bbb'

});

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕星星 2018-04-11 14:00:37

请问你的safari浏览器是在windows系统上的吗?如果是的话,可能是版本过低的问题,建议在苹果电脑或者是笔记本上面测试一下,祝学习愉快~~

  • 提问者 Jerry学编程 #1
    我的是苹果电脑
    2018-04-11 14:07:26
  • 好帮手慕星星 回复 提问者 Jerry学编程 #2
    在苹果笔记本上面测试了你提交的作业,是没有问题的哦,看看你提交的作业和现在你自己测试的代码是否是一样的,是否有所改动。
    2018-04-11 17:09:01
  • 提问者 Jerry学编程 回复 好帮手慕星星 #3
    我在看看是什么回事,谢谢你
    2018-04-11 17:12:46
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师