15行css,15行js教你实现html自动轮播!无敌简单!(个人总结)

        关于原生js实现html的轮播网上有很多很多,但大都写的太长太多,然后就懒得看了,最后还是决定自己去摸索js写的轮播,这样理解记忆也能更深刻。

        这里本人总结出的自动轮播方法十分简单,效果也很不错。代码总共就这么多:



        以三张图片为例(均为1920 x 360),我们首先把静态写好。

        放图片主要分为3个div


        一个是轮播的总框架,如图为  lunboFrame  ,主要是定一个总框架,css如下:


            其实这个不要也没事。效果图如下(加个border方便看):


        第二个div是轮播的宽度,css如下:


        width设为100%,是为了自适应你的浏览器缩放大小,很多时候1080P的电脑屏在使用浏览器缩放比例为100%的情况下无法完整预览一个1920px宽的图片,所以width:100%就是自适应,当你的浏览器放大或缩小时,width也跟着你的浏览器缩放,好处就是不会出现横向滚动条,当然咱们也要加上最大宽度max-width,因为在浏览器缩小比例的时候,width会变大,如果没有这个最大宽度,当超过1920px时,剩下的图片就会露出来,比如我的每次轮播只有一张图片,那么最大长度就是1920px,高度不用管了,上一个div限制过了,margin: 0 auto 是使轮播的div置于网页中央,overflow:hidden是将溢出的部分隐藏。

        第三个div是所有图片加起来的总长度,以为是要横着切换,所以长度就是1920*3=5760px

        font-size:0是取消每张图片之间的间隙,位置改为相对定位,因为咱们要将这个div进行平移,至于你喜欢向左还是向右就看你个人兴趣了,所有图片向左平移,那么就是rightright的值是平移的根本所在,transition是对right值变化时处理为渐变,图片是肉眼能够看见的平移,没有这句话图片则瞬移,当然all写成right也没事。

      如果没有overflow:hidden,那么三张图片将会是这样子:


        加上之后就是这样子:


        剩下两张位置没动,只不过被隐藏了。

        OK,静态到这里就成功了,剩下的工作就是用js更改right的值了。


        首先在js里我们要获取 imagesWidth div 的对象和和创建一个right的值的一个变量,这里命名为distance


        这个是讲imagesWidth这个div平移的主要方法,第一个局部变量numericaValue是用来获取当前imagesWidthright 的值来进行判断,一开始为0,每次平移一张图片的宽度,所以就是imagesWidth.style.right= distance + 'px'   ;  distance+=1920  

        这样就可以将div向左平移1920px,所以看起来就像图片向左平移了1920px,而且由此计算得出right的值一定是1920的整数倍,当right3840px时,就说明已经平移两次了,到最后一张了,这个时候,我们就不能再让div平移了,让right从新等于0distance回到1920OK,图片的平移就完了。


        这个就是让页面加载完后,自动无限执行imgDistance()这个方法,延时为3秒。OK,完事了。

         这是我认为的最简单的自动轮播,当然也有瑕疵,比如到最后一张图片的时候,由于有transition的延迟,我们也能够明显用肉眼看到图片是自动滚回去的,当然解决方法也简单,把延迟再做处理就OK。

          这里是将div进行平移,所以里面的内容可以换成视频或者其它东西,只要长度是1920就行。


        (以上是将轮播延时改为1s的效果,3张图片的轮换)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容