iScroll框架的修改
增加自定义滑动宽度
iScroll框架默认滑动的宽度为当前获取对象的宽度,当在形如400px宽的对象里有4张图片,我们每次只希望滑动100px的宽度暨一张图片,做如下修改:
1.在that.options里增加一个配置项getScrollW : “”,这里默认为空
2.在refresh方法里找到that.wrapperW = that.wrapper.clientWidth;并修改为that.wrapperW = that.options.getScrollW ? that.options.getScrollW : that.wrapper.clientWidth;
3:在refresh方法里找到that.scrollerW = m.round(that.scroller.offsetWidth * that.scale);并修改为that.scrollerW = m.round((that.options.getScrollW ? that.scroller.offsetWidth – that.wrapper.offsetWidth + that.options.getScrollW : that.scroller.offsetWidth) * that.scale);
增加自定义滑动宽度在iScroll里的修改就完成了,自己在用的时候,在new iScroll里可以按照配置别的参数一样,配置getScrollW 属性,如果为空或没有配置,就默认滑动当前对象的宽度,如果设置了getScrollW:100px,则就每次滑动100px;
增加解锁状态pullLock
iScroll默认在加载完后,会阻止浏览器的默认行为,如左右滑动的时候,这个时候会阻止上下滑动,这样对很多文章内容页相对较长的页面显然不适用,修改如下
1:在that.options里增加一个配置项pullLock: true,这里默认为true
2:在_start方法里找到e.preventDefault();,并修改为if(!that.options.pullLock){e.preventDefault();}
3:在_move方法里找到e.preventDefault();,并修改为if(that.options.pullLock){if(newY>=-10 && newY<=10){e.preventDefault();}}else{e.preventDefault();}
增加解锁状态在iScroll里的修改也完成了,自己在new iScroll的时候,增加一个配置项pullLock,如果为true的话,就不会阻止浏览器的默认行为,如果为false的话,就会阻止浏览器的默认行为,这个可以自己根据需求制定。
修改destroy方法
iScroll在初始化的时候,对resize事件做了绑定操作that._bind(RESIZE_EV, window);,但是当在destroy销毁事件的时候,做的解绑that._unbind(RESIZE_EV);没有加window对象,不知道为什么,这个改成that._unbind(RESIZE_EV,window);就行了。
转载于:https://www.cnblogs.com/anjey/archive/2012/08/23/2653475.html
iScroll框架的修改相关推荐
- 框架实现修改功能的原理_JAVA集合框架的特点及实现原理简介
1.集合框架总体架构 集合大致分为Set.List.Queue.Map四种体系,其中List,Set,Queue继承自Collection接口,Map为独立接口 Set的实现类有:HashSet,Li ...
- php的框架修改建议,thinkphp 框架适配修改
最近项目需要使用php开发,php开发中比较流行的业务框架有Laravel, yii, CakePHP. 最后决定使用ThinkPhp的原因是上述三种并没有用过,为了支持国产就直接ThinkPHP 搞 ...
- 在bootstrap ace样式框架上修改的后台管理型模板(Tab页后台管理模板)
后台管理模板开始用frameset布局,但是有时候会遮挡比如上面导航或者左边导航的二级三级弹出菜单,因为宽度被限制了,所以有时候就用easyui或者ext的,但是样式不好看,然后看到了bootstra ...
- 将ejs转为html,Node.js Express Web应用框架ejs修改为html
npm安装命令:npm install ejs -save 工程结构说明: bin:存放可执行文件. node_modules:存放package.json中安装的模块,在package.json添加 ...
- Qt MVD框架下修改视图中数据项/标题的背景颜色说明(Qt 5.10.1)
在不利用QSS的情况下,如果想修改MVD中视图的某个数据项的背景颜色,则可以: QVariant YourModel::data(const QModelIndex &index, int r ...
- ss修改服务器加密方式,SSM框架新增/修改用户、用户登录时密码加密处理及校验...
加密技术Md5Crypt需要在pom文件中导入包: commons-codec commons-codec 1.10 一.第一种实现方法 1).新增用户时,对新增后的用户密码进行加密 在userSer ...
- Node.js中的express框架,修改内容后自动更新(免重启),express热更新
有两个插件可以解决此问题:1)supervisor:2)nodemon. 今天我只讲supervisor如何安装.设置开机自动启动: 强调一下!用supervisor来启动nodejs,就不用用什么p ...
- flask框架如何实现修改密码和免密登录功能
flask是python web开发的常用框架之一.本文将讲述flask如何实现修改密码和免密登录功能 修改密码功能 数据库部分: #重置密码 def reset_pass(phone,passwor ...
- 【修改 ruoyi-plus 项目名字很麻烦,不如来试试这个工具!开源框架修改项目名!】
spring boot 开发中经常会用到脚手架[开源框架]修改项目名称模块的时候让人头疼且费时间!不妨来试试这个工具,超好用!!! 文章目录 spring boot 开发中经常会用到脚手架[开源框架] ...
最新文章
- python爬虫网络请求超时_6、web爬虫讲解2—urllib库爬虫—基础使用—超时设置—自动模拟http请求...
- 几种和生成网络相似的纠缠网络(接近人脑)
- Java stackoverflowerror异常与outofmemoryerror异常区别
- python基础教程:while循环与运算符和编码
- WCF中安全的那些事!!!
- 快速入门Matplotlib
- Git Bash推送GitHub不成功---密钥设置
- 包含min函数的栈(important)
- 2016年3月-7月电机组装以及基于MAXON运动控制系统
- jmap与jstat工具实战分析
- windows下如何使用QT编写dll程序 .
- 对于注塑模具设计的原则,这些核心你掌握了吗?
- 如何用Airtest脚本切换手机的输入法
- 笔记本连接显示器后没有声音_电脑连接HDMI电视/显示器后没声音怎么解决
- 大数据时代:数据收集比数据挖掘更有意义
- JVM调优-GC基本原理和调优关键分析
- 推荐中使用FNN/PNN/ONN/NFM优化特征交叉
- zeppelin入门使用
- 页面布局的几种宽度设置方式—html
- 智慧水务综合管理平台解决方案,助力水司数字化管理