实现利用jq图片点击轮播
来源:互联网 发布:ie没有java加载项 编辑:程序博客网 时间:2024/05/18 01:58
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<style>
*{margin:0;padding:0;}
ul li {
float: left;
list-style-type:none;
}
.v_content_list {
height: 300px;
position: relative;
width: 1100px;
}
.v_content {
height: 300px;
width: 200px;
position: relative;
overflow:hidden;
}
.current{width:10px;height:10px;border:1px #ff0000 solid;}
</style>
<meta charset="utf-8" />
</head>
<body>
<div class="v_show">
<div class="v_caption">
<h2 class="cartoon" title="卡通动漫">卡通动漫</h2>
<div class="highlight_tip">
<span class="current">1</span><span>2</span><span>3</span><span>4</span>
</div>
<div class="change_btn">
<span class="next">下一页</span>
<span class="prev">上一页</span>
</div>
</div>
<div class="v_content">
<div class="v_content_list">
<ul>
<li><img src="1.jpg" /><h4>图片1</h4><span>播放量:<em>2531</em></span></li>
<li><img src="2.jpg" /><h4>图片2</h4><span>播放量:<em>2531</em></span></li>
<li><img src="3.jpg" /><h4>图片3</h4><span>播放量:<em>2531</em></span></li>
<li><img src="4.jpg" /><h4>图片4</h4><span>播放量:<em>2531</em></span></li>
<li><img src="1.jpg" /><h4>图片1</h4><span>播放量:<em>2531</em></span></li>
</ul>
</div>
</div>
</div>
<script>
$(function(){
var page = 1;
var i = 1;
$("span.next").click(function () {
var $parent = $(this).parents("div.v_show");//找到父元素
var $v_show = $parent.find("div.v_content_list");//找到要变化的子元素
var $v_content = $parent.find("div.v_content"); //找到要变化的外围元素
var v_width = $v_content.width(); //获取他的宽度
var len = $v_show.find("li").length;//得到有几个子元素
var page_count = Math.ceil(len / i);//向上取整
if (!$v_show.is(":animated")) {//当前没在运动
if (page == page_count-1) {//当在第四张的时候,这里我直接算出了800,200一张,再用回调函数重新设置位置
$v_show.animate({ left: "-800px" }, 1000, function () { $v_show.css({left:"0px"}) });
page = 1;
}
else {
$v_show.animate({ left: '-=' + v_width }, 1000);
page++;//移动的距离
}
}
$parent.find("span").eq(page - 1).addClass("current").siblings().removeClass("current");
});//得到当前的索引值,给当前的span元素添加current,而他的兄弟则移出
$("span.prev").click(function () {
var $parent = $(this).parents("div.v_show");
var $v_show = $parent.find("div.v_content_list");
var $v_content = $parent.find("div.v_content");
var v_width = $v_content.width();
var len = $v_show.find("li").length;
var page_count = Math.ceil(len / i);
if (!$v_show.is(":animated")) {
if (page == 1) {
$v_show.css({ left: "-800px" }); $v_show.animate({ left: "-600px" },1000)
page = page_count-1;
}
else {
$v_show.animate({ left: '+=' + v_width }, 1000);
page--;
}
}
$parent.find("span").eq(page - 1).addClass("current").siblings().removeClass("current");
});
})//同上
</script>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<style>
*{margin:0;padding:0;}
ul li {
float: left;
list-style-type:none;
}
.v_content_list {
height: 300px;
position: relative;
width: 1100px;
}
.v_content {
height: 300px;
width: 200px;
position: relative;
overflow:hidden;
}
.current{width:10px;height:10px;border:1px #ff0000 solid;}
</style>
<meta charset="utf-8" />
</head>
<body>
<div class="v_show">
<div class="v_caption">
<h2 class="cartoon" title="卡通动漫">卡通动漫</h2>
<div class="highlight_tip">
<span class="current">1</span><span>2</span><span>3</span><span>4</span>
</div>
<div class="change_btn">
<span class="next">下一页</span>
<span class="prev">上一页</span>
</div>
</div>
<div class="v_content">
<div class="v_content_list">
<ul>
<li><img src="1.jpg" /><h4>图片1</h4><span>播放量:<em>2531</em></span></li>
<li><img src="2.jpg" /><h4>图片2</h4><span>播放量:<em>2531</em></span></li>
<li><img src="3.jpg" /><h4>图片3</h4><span>播放量:<em>2531</em></span></li>
<li><img src="4.jpg" /><h4>图片4</h4><span>播放量:<em>2531</em></span></li>
<li><img src="1.jpg" /><h4>图片1</h4><span>播放量:<em>2531</em></span></li>
</ul>
</div>
</div>
</div>
<script>
$(function(){
var page = 1;
var i = 1;
$("span.next").click(function () {
var $parent = $(this).parents("div.v_show");//找到父元素
var $v_show = $parent.find("div.v_content_list");//找到要变化的子元素
var $v_content = $parent.find("div.v_content"); //找到要变化的外围元素
var v_width = $v_content.width(); //获取他的宽度
var len = $v_show.find("li").length;//得到有几个子元素
var page_count = Math.ceil(len / i);//向上取整
if (!$v_show.is(":animated")) {//当前没在运动
if (page == page_count-1) {//当在第四张的时候,这里我直接算出了800,200一张,再用回调函数重新设置位置
$v_show.animate({ left: "-800px" }, 1000, function () { $v_show.css({left:"0px"}) });
page = 1;
}
else {
$v_show.animate({ left: '-=' + v_width }, 1000);
page++;//移动的距离
}
}
$parent.find("span").eq(page - 1).addClass("current").siblings().removeClass("current");
});//得到当前的索引值,给当前的span元素添加current,而他的兄弟则移出
$("span.prev").click(function () {
var $parent = $(this).parents("div.v_show");
var $v_show = $parent.find("div.v_content_list");
var $v_content = $parent.find("div.v_content");
var v_width = $v_content.width();
var len = $v_show.find("li").length;
var page_count = Math.ceil(len / i);
if (!$v_show.is(":animated")) {
if (page == 1) {
$v_show.css({ left: "-800px" }); $v_show.animate({ left: "-600px" },1000)
page = page_count-1;
}
else {
$v_show.animate({ left: '+=' + v_width }, 1000);
page--;
}
}
$parent.find("span").eq(page - 1).addClass("current").siblings().removeClass("current");
});
})//同上
</script>
</body>
</html>
阅读全文
0 0
- 实现利用jq图片点击轮播
- 如何用jq实现图片轮播
- jq实现轮播
- JQ实现轮播
- HTML+CSS+JQ实现图片轮播效果
- jq + css 实现简单的图片轮播效果
- 简单的点击实现图片轮播~
- 点击轮播图片左右按钮,实现轮播效果
- jq 实现无缝轮播
- 利用vueJs实现图片轮播
- 利用banner实现图片无限轮播,
- jq实现图片轮播:圆形焦点+左右控制+自动轮播
- jq实现图片的轮播,以及图片的等比例缩放
- 003_JS实现图片轮播与点击播放
- 点击轮播图片跳转
- 用jq实现无限轮播
- 淡入淡出背景轮播 jq实现
- jq实现无缝隙轮播
- 0102.分流器——测电流用
- React -- 组件间通信
- Mysql性能优化-数据库设计
- HTML5中的全局属性
- php面试题之二——数据结构和算法(高级部分)
- 实现利用jq图片点击轮播
- Struts2与jsp之前传递值
- Java 并发专题 :闭锁 CountDownLatch 之一家人一起吃个饭
- com.android.ddmlib.AdbCommandRejectedException
- MO、AO、AE的联系与区别
- 中文在mysql里占多少位
- 剑指offer-数值的整数次方-二分快速幂-位移代替除2
- HQL举例
- Redis入门指南之进阶