基于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 相关文章推荐
一个加载js文件的小脚本
Jun 28 Javascript
关于文本框的一些限制控制总结~~
Apr 15 Javascript
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
Jun 05 Javascript
jQuery实现类似滑动门切换效果的层切换
Sep 23 Javascript
js判断iframe内的网页是否滚动到底部触发事件
Mar 18 Javascript
JS常用字符串处理方法应用总结
May 22 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
Nov 18 Javascript
vue指令以及dom操作详解
Mar 04 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
Oct 12 Javascript
bootstrap响应式导航条模板使用详解(含下拉菜单,弹出框)
Nov 17 Javascript
JavaScript实现的联动菜单特效示例
Jul 08 Javascript
用js实现放大镜效果
Oct 28 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中的数组操作函数整理
2008/08/18 PHP
php Calender(日历)代码分享
2014/01/03 PHP
Laravel 5 框架入门(一)
2015/04/09 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
PHP上传文件参考配置大文件上传
2015/12/16 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
2016/01/05 PHP
Zend Framework教程之Zend_Registry对象用法分析
2016/03/22 PHP
PHP socket 模拟POST 请求实例代码
2016/07/18 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
jQuery 渐变下拉菜单
2009/12/15 Javascript
查看源码的工具 学习jQuery源码不错的工具
2011/12/26 Javascript
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
js形成页面的一种遮罩效果实例代码
2014/01/04 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
JavaScript分页功能的实现方法
2015/04/25 Javascript
JavaScript正则表达式替换字符串中图片地址(img src)的方法
2017/01/13 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
Angular2使用Angular CLI快速搭建工程(一)
2017/05/21 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
vue-router 中router-view不能渲染的解决方法
2017/05/23 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
微信小程序实现单选功能
2018/10/30 Javascript
JavaScript实现随机点名器实例详解
2019/05/07 Javascript
JS+CSS实现3D切割轮播图
2020/03/21 Javascript
vue循环中点击选中再点击取消(单选)的实现
2020/09/10 Javascript
vue中使用腾讯云Im的示例
2020/10/23 Javascript
修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法
2018/01/26 Python
如何安装2019Pycharm最新版本(详细教程)
2019/09/26 Python
css3 边框、背景、文本效果的实现代码
2018/03/21 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
最新的大学生找工作自我评价
2013/09/29 职场文书
初中音乐教学反思
2014/01/12 职场文书
家长学校培训材料
2014/08/20 职场文书
毕业实习指导教师评语
2014/12/31 职场文书
忠犬八公的故事观后感
2015/06/05 职场文书