前言

iscroll之所以会诞生,主要是因为无论是在以前的iphone、ipod、android 或是更早前的移动webkit都没有提供一种原生的方式来支持在一个固定高度的容器内滚动内容。相信很多人和我一样,在使用iscroll的是时候只知道可以手动滑动,不知道iscroll的轮播怎么实现,那么以下就是我做的一个轮播效果,亲测有效;
一、html代码,当然可以动态添加下面的小圆点
<div id="wrapper">
<div id="scroller">
<ul id="thelist">
<li><strong>1.</strong> <em>A robot may not injure a human being or, through inaction, allow a human being to come to harm.</em></li>
<li><strong>2.</strong> <em>A robot must obey any orders given to it by human beings, except where such orders would conflict with the First Law.</em></li>
<li><strong>3.</strong> <em>A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.</em></li>
<li><strong>4Zeroth Law:</strong> <em>A robot may not harm humanity, or, by inaction, allow humanity to come to harm.</em></li>
</ul>
</div>
</div>
<div id="nav">
<div id="prev" onclick="myScroll.scrollToPage('prev', 0);return false">← prev</div>
<ul id="indicator">
<li class="active">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<div id="next" onclick="myScroll.scrollToPage('next', 0);return false">next →</div>
</div>
二、css代码
<style type="text/css" media="all">
body, ul, li {
padding: 10px;
margin: 0;
}
body {
font-size: 12px;
-webkit-user-select: none;
-webkit-text-size-adjust: none;
font-family: helvetica;
}
#wrapper {
width:100%;
height: 160px;
float: left;
position: relative; /* On older OS versions "position" and "z-index" must be defined, */
z-index: 1; /* it seems that recent webkit is less picky and works anyway. */
overflow: hidden;
background: #aaa;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
-o-border-radius: 10px;
border-radius: 10px;
background: #e3e3e3;
}
#scroller {
/*width: 2100px;*/
height: 100%;
float: left;
padding: 0;
}
#scroller ul {
list-style: none;
display: block;
float: left;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
text-align: left;
}
#scroller li {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box;
display: block;
float: left;
/*width: 300px;*/
height: 160px;
text-align: center;
font-family: georgia;
font-size: 18px;
line-height: 140%;
}
#nav {
width:100%;
float: left;
}
#prev, #next {
float: left;
font-weight: bold;
font-size: 14px;
padding: 5px 0;
width: 80px;
}
#next {
float: right;
text-align: right;
}
#indicator, #indicator > li {
display: block;
float: left;
list-style: none;
padding: 0;
margin: 0;
}
#indicator {
width: 110px;
padding: 12px 0 0 30px;
}
#indicator > li {
text-indent: -9999em;
width: 8px;
height: 8px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
-o-border-radius: 4px;
border-radius: 4px;
background: #ddd;
overflow: hidden;
margin-right: 4px;
}
#indicator > li.active {
background: #888;
}
#indicator > li:last-child {
margin: 0;
}
</style>
三、js代码(这里我用的jquery 做的测试,你也可以根据自己的喜好选择其他库)
<script src="js/jquery.js"></script>
<script src="js/iscrollc.js"></script>
<script type="text/javascript">
var myScroll;
var timer;
var i=0;
var obj=$('#wrapper');
var obj_w=obj.outerWidth(true);
var oli=obj.find('li');
var oli_l=oli.length;
oli.outerWidth(obj_w);
$('#scroller').width(oli_l*obj_w);
function loaded() {
myScroll = new iScroll('wrapper', {
snap: true,
momentum: false,
hScrollbar: false,
onScrollEnd: function () {
document.querySelector('#indicator > li.active').className = '';
document.querySelector('#indicator > li:nth-child(' + (this.currPageX+1) + ')').className = 'active';
},
onBeforeScrollStart:function(){
clearInterval(timer);
},
onTouchEnd:function(){
timer=setInterval(gund,2000);
i=myScroll.currPageX
},
});
timer=setInterval(gund,2000);
function gund(){ //每5秒滚动
i++;
if(i==oli_l){
i=0;
myScroll.scrollToPage(0, 0, 1000); //滚回第一页
} else {
myScroll.scrollToPage('next', 0);
};
document.title=i
};
};
document.addEventListener('DOMContentLoaded', loaded, false);
</script>
html 和css不用说,都是行家,主要是js,首先是初始化,再根据iscorll提供的API修改相应的代码,这里主要用刀onBeforeScrollStart,onScrollEnd,onTouchEnd这三个事件,同时结合scrollToPage(),currPageX事件进行对应的定时修改,滑动之后同步自动滚动的页数,就ok了,其实写这个主要是熟悉API。。。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用iscorll能带来一定的帮助,如果有疑问大家可以留言交流。
# iscroll
# 图片轮播
# 轮播图
# iscroll轮播
# JQuery插件iScroll实现下拉刷新
# 滚动翻页特效
# iScroll中事件点击触发两次解决方案
# IScroll5 中文API参数说明和调用方法
# iscroll.js的上拉下拉刷新时无法回弹的解决方法
# 学习使用jquery iScroll.js移动端滚动条插件
# 基于HTML5上使用iScroll实现下拉刷新
# 上拉加载更多
# iScroll.js 使用方法参考
# jQuery iScroll.js 移动端滚动条美化插件
# 基于iscroll.js实现下拉刷新和上拉加载效果
# iscroll碰到Select无法选择下拉刷新的解决办法
# 自己的
# 主要是
# 的是
# 都是
# 是在
# 是因为
# 你也
# 和我
# 很多人
# 我用
# 我做
# 早前
# 只知道
# 这篇文章
# 可以根据
# 这三个
# 第一页
# 用刀
# 容器内
# 小圆点
相关文章:
如何在阿里云虚拟服务器快速搭建网站?
如何在万网开始建站?分步指南解析
c++怎么用jemalloc c++替换默认内存分配器【性能】
PHP 500报错的快速解决方法
如何在七牛云存储上搭建网站并设置自定义域名?
seo网站制作优化,网站SEO优化步骤有哪些?
教育培训网站制作流程,请问edu教育网站的域名怎么申请?
建站主机选哪家性价比最高?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
家庭服务器如何搭建个人网站?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
如何通过FTP服务器快速搭建网站?
c# 在ASP.NET Core中管理和取消后台任务
python的本地网站制作,如何创建本地站点?
Java解压缩zip - 解压缩多个文件或文件夹实例
建站之星安装后界面空白如何解决?
Swift中循环语句中的转移语句 break 和 continue
如何用低价快速搭建高质量网站?
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
如何配置WinSCP新建站点的密钥验证步骤?
单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?
如何在阿里云域名上完成建站全流程?
如何用美橙互联一键搭建多站合一网站?
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
如何在IIS中新建站点并配置端口与物理路径?
音乐网站服务器如何优化API响应速度?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何通过虚拟主机空间快速建站?
太原网站制作公司有哪些,网约车营运证查询官网?
免费网站制作appp,免费制作app哪个平台好?
家具网站制作软件,家具厂怎么跑业务?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
如何在云主机上快速搭建多站点网站?
建站为何优先选择香港服务器?
如何在云指建站中生成FTP站点?
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
,怎么在广州志愿者网站注册?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何打造高效商业网站?建站目的决定转化率
已有域名和空间如何快速搭建网站?
中山网站制作网页,中山新生登记系统登记流程?
一键网站制作软件,义乌购一件代发流程?
如何生成腾讯云建站专用兑换码?
如何快速搭建高效WAP手机网站?
高性价比服务器租赁——企业级配置与24小时运维服务
全景视频制作网站有哪些,全景图怎么做成网页?
香港服务器租用费用高吗?如何避免常见误区?
*请认真填写需求信息,我们会在24小时内与您取得联系。