js实现适合新闻类图片的轮播效果


Posted in Javascript onFebruary 05, 2017

话不多说,请看代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Picture carousel</title>
<style>
*
{
 margin: 0;
 padding: 0;
}
.carousel-container
{
 overflow: hidden;
 width: 405px;/* 130*3+5*3 = 405 */
 height: 150px;
 margin: 50px auto;
 background-color: #2c2c2c;
}
.carousel-area
{
 width: 1350px;/* 675*2 = 1350 */
 height: 150px;
}
.carousel-ul
{
 float: left;
 overflow: hidden;
 width: 675px;/* 130*5+5*5 = 675 */
 height: 150px;
}
.carousel-ul li
{
 float: left;
 overflow: hidden;
 width: 130px;
 height: 130px;
 margin: 10px 5px 10px 0;
 list-style-type: none;
}
 </style>
</head>
<body>
 <div class="carousel-container">
 <div class="carousel-area">
 <ul class="carousel-ul" id="carousel-ul-1">
 <li><img src="img/1.gif" alt=""></li>
 <li><img src="img/2.jpg" alt=""></li>
 <li><img src="img/3.jpg" alt=""></li>
 <li><img src="img/4.jpg" alt=""></li>
 <li><img src="img/5.gif" alt=""></li>
 </ul>
 </div>
 </div>
<script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
<script>
 $(document).ready(function() {
 var carousel_interval_id, //interval ID
 start_carousel_flag = false, //是否开始interval
 carousel_speed = 50, //滚动速度(px/s),carousel_speed=1000/interval时间间隔。
 start_interval = function() { //执行interval
  start_carousel_flag = true;
  carousel_interval_id = setInterval(function() {
  var margin_left = $('.carousel-area').css('margin-left');
  $('.carousel-area').css('margin-left', (parseInt(margin_left) - 1) + 'px'); //不断左移1px
  if (parseInt($('.carousel-area').css('margin-left')) <= -($('.carousel-ul').width())) { //轮播部分超出容器后复位
   $('.carousel-area').css('margin-left', 0);
  }
  }, 1000 / carousel_speed)
 },
 end_interval = function() { //停止interval
  start_carousel_flag = false;
  carousel_interval_id = clearInterval(carousel_interval_id);
 }
 $('.carousel-area').append('<ul class="carousel-ul">' + $('.carousel-ul').html() + '</ul>'); //复制carousel-ul,填补左移后出现的无内容区域,以此完成循环
 start_interval();
 $('.carousel-area').hover(
 function() { //鼠标悬停事件
  if (start_carousel_flag) { //已经开始interval
  end_interval();
  }
 },
 function() { //鼠标离开事件
  if (!start_carousel_flag) { //没有开始interval
  start_interval();
  }
 }
 )
})
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
javascript eval函数深入认识
Feb 21 Javascript
Underscore.js 的模板功能介绍与应用
Dec 24 Javascript
JS+CSS实现表格高亮的方法
Aug 05 Javascript
推荐10 个很棒的 jQuery 特效代码
Oct 04 Javascript
JavaScript的设计模式经典之代理模式
Feb 24 Javascript
Angularjs中使用layDate日期控件示例
Jan 11 Javascript
JavaScript实现QQ聊天消息展示和评论提交功能
May 22 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
May 31 Javascript
BootStrap模态框不垂直居中的解决方法
Oct 19 Javascript
本地搭建微信小程序服务器的实现方法
Oct 27 Javascript
微信小程序获取用户信息并保存登录状态详解
May 10 Javascript
vue 使用class创建和清除水印的示例代码
Dec 25 Vue.js
BootStrap table删除指定行的注意事项(笔记整理)
Feb 05 #Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
Feb 05 #Javascript
thinkjs之页面跳转同步异步操作
Feb 05 #Javascript
js实现5秒倒计时重新发送短信功能
Feb 05 #Javascript
解决微信内置浏览器返回上一页强制刷新问题方法
Feb 05 #Javascript
js仿小米手机上下滑动效果
Feb 05 #Javascript
简单实现js无缝滚动效果
Feb 05 #Javascript
You might like
用PHP实现将GB编码转换为UTF8
2006/11/25 PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
2010/04/12 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
2011/06/28 PHP
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
php+mysqli事务控制实现银行转账实例
2015/01/29 PHP
php获取系统变量方法小结
2015/05/29 PHP
javascript 用原型继承来实现对象系统
2010/03/22 Javascript
IE6下opacity与JQuery的奇妙结合
2013/03/01 Javascript
Google Map V3 绑定气泡窗口(infowindow)Dom事件实现代码
2013/04/26 Javascript
JavaScript中操作字符串之localeCompare()方法的使用
2015/06/06 Javascript
jquery实现鼠标悬浮停止轮播特效
2020/08/20 Javascript
js制作支付倒计时页面
2016/10/21 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
理解javascript中的闭包
2017/01/11 Javascript
记一次vue去除#问题处理经过小结
2019/01/24 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
2019/05/22 Javascript
JavaScript基于SVG的图片切换效果实例代码
2020/12/15 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
2021/01/22 Vue.js
Python实现的计数排序算法示例
2017/11/29 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
Python 实现两个列表里元素对应相乘的方法
2018/11/14 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
pip安装python库的方法总结
2019/08/02 Python
python实现的爬取电影下载链接功能示例
2019/08/26 Python
用python中的matplotlib绘制方程图像代码
2019/11/21 Python
Pytorch 保存模型生成图片方式
2020/01/10 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
Stubhub英国:购买体育、演唱会和剧院门票
2018/06/10 全球购物
芬兰灯具网上商店:Nettilamppu.fi
2018/06/30 全球购物
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
《最后的姿势》教学反思
2014/02/27 职场文书
教师求职自荐信
2014/03/09 职场文书
《最大的麦穗》教学反思
2014/04/17 职场文书
用基于python的appium爬取b站直播消费记录
2021/04/17 Python