zoukankan      html  css  js  c++  java
  • iScroll小计

    iScroll版本

    • iScoll.js     常规版本。
    • iscoll-lite.js     精简版。不支持快速跳跃,滚动条,鼠标滚轮,快捷键绑定。如果你需要的是滚动(特别是在移动平台)这个个又小又快的解决方案。
    • iscroll-zoom.js     在标准滚动功能上增加缩放功能。
    • iscroll-infinite.js     可以做无限缓存的滚动。
     
    入门
    1. 尽可能保持DOM结构的简洁。
    最佳HTML结构如下:
    <div id="wrapper">
        <ul>
            <li>...</li>
            <li>...</li>
            ...
        </ul>
    </div>
    2. iScroll作用与滚动区域的外层。
     
    3. 脚本初始化
     
    <script type="text/javascript">
        var myScroll = new IScroll('#wrapper');
    </script>
    支持css ID和css 名称传递滚动容器元素(本例中的“#wrapper”)。
     
    4. 只有容器的第一个子元素才会滚动,其他的忽略。()
     
    初始化
     
    初始化时需要注意的几个问题:
     
    • DOM准备完成后才能初始化iScroll,保险的方式是在window的onload事件中启动它。
    • 初始化之前要给定滚动区域的高度和宽度。(若有图片在滚动区域导致不能立马获取区域的高度和宽度,iScroll的滚动尺寸可能会出错)
    • 在滚动容器(wrapper)上增加position:relative或者absolute属性,能解决大部分滚动容器大小计算错误问题。
     
    demo barebone中的样式:
    2d-scroll中的样式:
     
     
     
    配置iScroll
     
    在iScroll初始化阶段通过构造函数的第二个参数进行配置
     
    var myScroll = new IScroll('#wrapper', {
        mouseWheel: true,
        scrollbars: true
    });
    常用的一些参数:
    hscroll: false     禁用水平滚动  (horizontal [ˌhɒrɪˈzɒntl] 水平的
    vScroll: false     禁用垂直滚动     (vertical [ˈvɜ:tɪkl] 垂直的
    hideScrollbar: true     禁用滚动条
     
     
    刷新
         iScroll需要知道容器(wrapper)和滚动内容(scroller)的大小。在iScroll初始化的时候进行计算,如果元素大小发生了变化,需要告诉iScroll,DOM发生了变化。这个可以通过调用refresh方法来实现。
     
         每当你触摸DOM的时候,浏览器的渲染器会对页面进行重绘。一旦这个重绘发生,我们就尅安全的读取新的DOM属性了。重绘不是瞬间完成的,所以我们需要在刷新iScroll之前给重绘一点时间。
         例子:
    ajax('page.php', onCompletion);
    
    function onCompletion () {
        // Update here your DOM
    
        setTimeout(function () {
            myScroll.refresh();
        }, 0);
    };
         如果你的html结构相当复杂,那么你应该给浏览器更多的执行时间,可以设置100到200毫秒的超时时间。     
     
     
        
     
    自定义事件
    使用on(type, fn)方法注册事件
    myScroll = new IScroll('#wrapper');
    myScroll.on('scrollEnd', doSomething);
    可以绑定的事件:
    beforeScrollStart,     在用户触摸屏幕但还没有开始滚动时触发
    scrollStart,               开始滚动
    scroll,                      内容滚动时触发
    scrollEnd,                 停止滚动时触发
    zoomStart,               开始缩放
    zoomEnd                  缩放结束
     
     
     
     
     
  • 相关阅读:
    Objective-C代码规范
    Http中Get/Post请求区别
    使用Vitamio打造自己的Android万能播放器
    Vitamio
    图片瀑布流
    TCP与UDP
    SQLite基本操作总结
    IOS文件操作的两种方式:NSFileManager操作和流操作
    JSON和XML
    一些iOS常用的第三方库和控件及第三方框架还有动画
  • 原文地址:https://www.cnblogs.com/kaixinbocai/p/4216579.html
Copyright © 2011-2022 走看看