iScroll.js 使用心得

iScroll.js是一款滑动插件, 使用iScroll.js可以让网页的一些滚动效果变得更平滑, 用户体验更好.

一般的使用就像网上所说的那样, 在引入了iscroll.js后, iscroll的最小使用粒度:

<div id="wrapper">
    <ul>
        <li>...</li>
        <li>...</li>
        ...
    </ul>
</div>
var myScroll = new IScroll(‘#wrapper‘);

这样就能是ul上挂在滑动效果.

还可以配置一些参数如:

var myScroll = new IScroll(‘#wrapper‘, { mouseWheel: true, scrollbars: true });

我一般习惯在进行请求的时候把iscroll实例化, 例如

    var myScroll;
    function render_list(){
        $.getJSON(ApiUrl + ‘‘, {gc_id:gc_id}, function(result){
        var data = result.datas;
        data.WapSiteUrl = WapSiteUrl;
        var html = template.render(‘c-second-tmpl‘, data);
        $("#wrapper").html(html);
        myScroll = new IScroll(‘#wrapper‘, { mouseWheel: true, click: true });
    }

使用iscroll时碰到的一些问题以及解决方案

  1. ul上已经加载进效果, 但是没有任何反应.

    解决:其他很多方案网上都能搜到了,我遇到的原因是我把<ul>标签设置了height: 100%,导致无法滚动.在#wrapper上设置高度为100%是完全没问题的,但是里面挂在iscroll的标签上如果高度为100%, 就有可能会出现无法滚动的问题.

  2. 有一些写的很复杂或者继承了很多css属性的wrapper和<ul>标签, 有可能因为属性太复杂而使得ul或者wrapper上的css属性没有清干净而无法生效...我现在就是遇到了这个问题, 我怀疑是css样式过多, 但是清除了之后也没有效果, 还要进一步排查...
  3. 做一个有二级的面包屑样式, 两级都加载了iscroll, 但是在第一次点击二级ul的时候, 没有滚动效果出来, 必须在点击一次一级菜单(第2点里死活加载不上iscroll)后, 二级菜单才有滚动效果...初步怀疑是二级菜单在一开始没有初始化, 导致iscroll也没有一起加载...

原文地址:https://www.cnblogs.com/darthbadwolf/p/8289315.html

时间: 2024-10-16 16:35:47

iScroll.js 使用心得的相关文章

运用iscroll.js遇到的问题

1.无法滑动的问题 需要检查iscroll.js文件加载上没有,如果加载上检查一下它和jquery文件加载的先后顺序.wrapper的position必须得写,bottom也必须得写. 2.滑不上去的问题 wrapper的height设置成了100%.所以出现这个问题,把这个属性去掉了好了 3.页面滑动不流畅(这样是暂时行可以,还没找到更好的解决办法)  #scroller {        transform: translate3d(0,0,0);        -webkit-transf

iScroll.js 用法参考

iScroll.js 用法参考[转] 转自:http://www.cnblogs.com/duanhuajian/archive/2013/04/08/3008323.html

iscroll.js 学习笔记

1.0 什么是iscroll.js? 就是一个Javascript 库,或者说是一个JQuery 插件,能在手机端实现下拉刷新,滚动翻页,双指放大缩小等特效. 可以模拟原生iOS应用里的滚动列表操作. 下载地址:https://github.com/cubiq/iscroll/ 2.0为什么要用iscroll.js ? css属性overflow:scroll在ios5之前是不支持的,所以可以通过这个插件来在所有浏览器上支持这种滚动. 3.0如何使用iscroll,js? 直接看demo: ht

iScroll.js的用法

一.iScroll.js的用法 概要 iScroll 4 这个版本完全重写了iScroll这个框架的原始代码.这个项目的产生完全是因为移动版webkit浏览器(诸如iPhone,iPad,Android 这些系统上广泛使用)提供了一种本地化的方式来对一个限定了高度和宽度的元素的内容进行滑动.很不幸的是,这种情况下所有的web应用的页面就不能够包含具有position:absolute的头.页尾或者是一个内容可滚动的中间区域. 然而,Android系统最新修订版已经可以支持这种功能了(尽管支持的力

iscroll.js 移动端手触滚动效果。

function loaded() {  var myscroll=new iScroll("wrapper",{hScrollbar:false, vScrollbar:false});}window.addEventListener("load",loaded,false); http://www.gafish.net/api/iScroll.html http://www.cnblogs.com/aaronjs/p/3147470.html iscroll.j

为啥使用Iscroll.js之后,a不能触发点击事件?

原因:是iscroll.js阻止了a的行为. 解决方法:打开iscroll-probe.js,然后找到preventDefaultException方法. 然后修改为: // preventDefault: true,preventDefault: false,//(把这句加上去哦)preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|A)$/ },  //(这个后面加|A,因为iscroll阻止了A的默认事件)

jquery——移动端滚动条插件iScroll.js

官网:http://cubiq.org/iscroll-5 demo: 滚动刷新:http://cubiq.org/dropbox/iscroll4/examples/pull-to-refresh/ 'Carousel' demo iScroll功能很强大,目前我只用来 自定义滚动条 以下简单介绍一下iscrol在移动端自定义滚动条时的使用和注意事项. 一.用法 iScroll对要滚动的元素进行初始化,且不限制一个页面中使用iScroll的元素个数. 使用iScroll时,DOM树的结构要足够

iScroll.js几个问题及其解决办法

1.在一个页面中需要点击tab切换,而且每个切换的内容都需要下拉刷新加载,这个时候需要在点击的时候用到myScroll.refresh();这个函数,刷新iScroll.js这个函数. 2.在页面中有input等需要输入的表单时,表单会无法输入,这时需要在代码最后加上以下这段函数, function allowFormsInIscroll(){ [].slice.call(document.querySelectorAll('input, select, button')).forEach(fu

zepto.js + iscroll.js上拉加载 下拉加载的 移动端 新闻列表页面

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="viewport" content="width=device-width,initial-scale=1.0