基于iScroll实现内容滚动效果


Posted in Javascript onMarch 21, 2018

一、iScroll简介

iScroll 是一款针对web app使用的滚动控件,它可以模拟原生IOS应用里的滚动列表操作,还可以实现缩放、拉动刷新、精确捕捉元素、自定义滚动条等功能。这里博主使用的版本iScroll4.25,目前最新版本是iScroll5,大家可以去官网下载。
官网地址:http://iscrolljs.com/

二、iScroll使用方法

1.iScroll使用结构

最优化使用iScroll的结构一般如下所示:

HTML:

<div id="wrapper">
  <div id="scroller">
   <ul>
    <li></li>
    ...
   </ul>
   <ul>
    <li></li>
    ...
   </ul>
  </div>
 </div>

注:1、iScroll一定要与滚动内容外面的wrapper进行联系才会产生效果。
       2、只有wrapper里的第一个子元素才可以滚动。

2、实例化iScroll

iScroll必须在调用之前实例化,实例化代码如下(在head标签中添加如下代码):

<script src="iscroll.js"></script>
 <script>
  var myscroll;//myscroll是全局变量,可以任意地方调用
  function loaded(){
   myscroll = new iScroll("wrapper");
   }
  window.addEventListener("DOMContentLoaded",loaded,false);
 </script>

三、滚动测试实例

HTML+CSS:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<script src="iscroll-4.2.5fix.js"></script><!--引入js包-->
<!--实例化iScroll-->
<script type="text/javascript">
 var myscroll;
 function loaded(){
 myscroll = new iScroll("wrapper");
 }
 window.addEventListener("DOMContentLoaded",loaded,false);
</script>
<!--CSS样式设置-->
#wrapper {
 position:absolute; z-index:1;
 top:45px; bottom:48px; left:0;
 width:100%;
 background:#aaa;
 overflow:auto;
}

#scroller {
 position:relative;
/* -webkit-touch-callout:none;*/
 -webkit-tap-highlight-color:rgba(0,0,0,0);

 float:left;
 width:100%;
 padding:0;
}

#scroller ul {
 position:relative;
 list-style:none;
 padding:0;
 margin:0;
 width:100%;
 text-align:left;
}

#scroller li {
 padding:0 10px;
 height:40px;
 line-height:40px;
 border-bottom:1px solid #ccc;
 border-top:1px solid #fff;
 background-color:#fafafa;
 font-size:14px;
}

#scroller li > a {
 display:block;
}
</style>
<title>滚动测试</title>
</head>
<body>
<div id="wrapper">
 <div id="scroller">
  <ul id="thelist">
   <li>Pretty row 1</li>
   <li id="aaa">Pretty row 2</li>
   <li>Pretty row 3</li>
   <li>Pretty row 4</li>
   <li>Pretty row 5</li>
   <li>Pretty row 6</li>
   <li>Pretty row 7</li>
   <li>Pretty row 8</li>
   <li>Pretty row 9</li>
   <li>Pretty row 10</li>
   <li>Pretty row 11</li>
   <li>Pretty row 12</li>
   <li>Pretty row 13</li>
   <li>Pretty row 14</li>
   <li>Pretty row 15</li>
   <li>Pretty row 16</li>
   <li>Pretty row 17</li>
   <li>Pretty row 18</li>
  </ul>
 </div>
</div>
</body>
</html>

四、运行效果

基于iScroll实现内容滚动效果

博主刚开始学习,局部内容滚动这只是iScroll最基本的功能,接下来博主会尝试拉动刷新等功能。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
Feb 18 Javascript
利用javascript的面向对象的特性实现限制试用期
Aug 04 Javascript
jquery 表格排序、实时搜索表格内容(附图)
May 19 Javascript
解决checkbox的attr(checked)一直为undefined问题
Jun 16 Javascript
JS中三目运算符和if else的区别分析与示例
Nov 21 Javascript
jQuery中slideUp()方法用法分析
Dec 24 Javascript
2种jQuery 实现刮刮卡效果
Feb 01 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
Apr 16 Javascript
Webpack 实现 Node.js 代码热替换
Oct 22 Javascript
JS实现json数组排序操作实例分析
Oct 28 Javascript
浅谈Vue组件单元测试究竟测试什么
Feb 05 Javascript
微信小程序分享小程序码的生成(带参数)以及参数的获取
Mar 25 Javascript
JS中的回调函数实例浅析
Mar 21 #Javascript
使用Vue制作图片轮播组件思路详解
Mar 21 #Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
Mar 21 #Javascript
JS实现遍历不规则多维数组的方法
Mar 21 #Javascript
vue项目关闭eslint校验
Mar 21 #Javascript
去掉vue 中的代码规范检测两种方法(Eslint验证)
Mar 21 #Javascript
使用Vue.js和Flask来构建一个单页的App的示例
Mar 21 #Javascript
You might like
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
2013/06/24 PHP
PHP版QQ互联OAuth示例代码分享
2015/07/05 PHP
UTF-8正则表达式如何匹配汉字
2015/08/03 PHP
Laravel5.4框架中视图共享数据的方法详解
2019/09/05 PHP
Firefox 无法获取cssRules 的解决办法
2006/10/11 Javascript
javascript实现的listview效果
2007/04/28 Javascript
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
Jquery Uploadify上传带进度条的简单实例
2014/02/12 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
Javascript学习笔记之数组的遍历和 length 属性
2014/11/23 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
javascript bom是什么及bom和dom的区别
2015/11/26 Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
2015/12/08 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
MVVM框架下实现分页功能示例
2018/06/14 Javascript
Python爬虫_城市公交、地铁站点和线路数据采集实例
2018/01/10 Python
Django使用paginator插件实现翻页功能的实例
2018/10/24 Python
python爬取盘搜的有效链接实现代码
2019/07/20 Python
django 单表操作实例详解
2019/07/30 Python
浅谈tensorflow中Dataset图片的批量读取及维度的操作详解
2020/01/20 Python
pycharm如何使用anaconda中的各种包(操作步骤)
2020/07/31 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
解决canvas转base64/jpeg时透明区域变成黑色背景的方法
2016/10/23 HTML / CSS
Sunglasses Shop丹麦:欧洲第一的太阳镜在线销售网站
2017/10/22 全球购物
iHerb中文官网:维生素、保健品和健康产品
2018/11/01 全球购物
为什么需要版本控制
2016/10/28 面试题
建筑设计专业求职自我评价
2014/03/02 职场文书
中国入世承诺
2014/04/01 职场文书
综治宣传月活动总结
2014/04/28 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
2014年村支部书记四风对照检查材料思想汇报
2014/10/02 职场文书
大国崛起日本观后感
2015/06/02 职场文书
房屋产权证明书
2015/06/19 职场文书