自学的前端,然而找不到工作,莫得办法。在头条发一下文章,对前端学习做一下记录,也希望能对你有点帮助。
首先,我用vue-cli搭的环境,不想麻烦的可以直接导入vue.js 然后自己做相应修改。思路是,用Vue提供的v-for指令循环输出需要轮播的图片,利用v-show指令控制图片的显示与否,尝试做的是爱奇艺网页端的轮播图的效果。所以具体效果可以看爱奇艺的网页。直接上html部分代码-
![32c5a9c27bceaaaf8f642a3ad90a82a6.png](https://i-blog.csdnimg.cn/blog_migrate/9df38188dc326ddc1c4508f8e59c7562.jpeg)
这里我们不做滑动的轮播图,只是简单的轮换显示图片。这一效果依赖的是--
v-for="(item, index) of list" v-show="number===index"第10和11行的代码,当number===index的时候,这张图片就会显示,其他图片隐藏。如果不知道v-show是什么意思,可以看Vue的官方文档先复习一下。好吧结合数据看一下可能会清晰点。继续上图--
![d8a187911c7c487627089014ec8f9324.png](https://i-blog.csdnimg.cn/blog_migrate/a2776de808ca68f2eed698cbd29a4883.jpeg)
如图第43行中的number初始值为0,就是说index===0的图片会显示,而其他的index值图片会隐藏,所以我们要实现轮播效果,就要对number值下手了,让让它周期递增,然后轮播到最后一张图后再归0,继续循环。
![6d9621bd54cb4caa1e84b535d8750181.png](https://i-blog.csdnimg.cn/blog_migrate/dafa65f976243a51feaf03ba505180d1.jpeg)
![1ae2f2ca214dccef3035fcc0f4e8545e.png](https://i-blog.csdnimg.cn/blog_migrate/b3f389e43134fe9896d7601f5d9d3553.jpeg)
mounted中设置循环this.timer=setInterval(this.autoPlay,2000) ,每两秒执行一次autoPlay方法autoPlay方法中,让number值自增,当number值等于最后一张图片的index值的时候,归零。这样循环效果就出来了。
list的数据样式也看一下吧,大概是这个样子的--
![1ef37fb4b6bdeba2c5430d2c855e48e5.png](https://i-blog.csdnimg.cn/blog_migrate/0a2285a015839af16afc700d5b17a662.jpeg)
css样式也给一下吧!自己写的大概效果,没有考虑响应效果。
![512781f4a3c3a77925db41fb77fd8b72.png](https://i-blog.csdnimg.cn/blog_migrate/8b05ad24021b0a15964a1caa29f6756b.jpeg)
![8143cba76c82fa8b61b1aa69e1cd76ca.png](https://i-blog.csdnimg.cn/blog_migrate/3c7ff37a45f9fd18ddec8ffbd47c11e2.jpeg)
![7ed0d38e6d2c06b0c8d8cd5736885585.png](https://i-blog.csdnimg.cn/blog_migrate/61e8e1f919695186e39bb6c57b3faacf.jpeg)
嗯......还挺乱的,后面再改进吧。