javascript - 轮播图不执行
天蓬老师
天蓬老师 2017-04-11 12:58:36
[JavaScript讨论组]

尝试写了一个轮播图,可是一直都不执行,但是也没报错




    
    Title
    
    


因为li没有浮动,我就试试这个想法可不可行,所有用的是top值。console能显示出来1,说明判断那一块执行了,但是图片完全没反应,求问原因??

感谢@抓不住的月光,我把代码改了一点,为了对比我贴在下边了




    
    Title
    
    


做了几个改动:

  1. 增加了动画的过渡效果

  2. 如果index的初始值定位0,在一次循环以后,第一张图片将会无法显示,直接会从第二章开始,因此我把index的值设置为了-1.

  3. 不再使用jquery的方法设置top值,因为用jq的方法不知为何一直不运行,所以我就换了。

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
黄舟

首先,你的setInterval写错了。

你要么这样写:

            setInterval(function() {
                slide();
            }, 100);

要么这样写:

setInterval(slide, 100);

至于你的那种写法- -首先漏了引号

setInterval("slide()", 100);

其次,window对象的setInterval要求传递的方法参数必须是【全局作用域】的
函数定义function slide(){...}这是【局部作用域】的函数,需改成:

slide=function(){...}//注意前面不能加var

所以这种【不建议】使用


最后你的slide函数里的$height不会更新,你这个轮播只会动一次就废了。。

再给你个例子吧https://jsfiddle.net/o5oqsodg/(这个例子还实现了无缝滚动和鼠标经过暂停功能,看懂了基本就都明白了)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号