• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >HBuilder教程 > 提升HTML5的性能体验系列之二 列表流畅滑动

提升HTML5的性能体验系列之二 列表流畅滑动

作者:教程 字体:[增加 减小] 来源:互联网 时间:2017-05-31

本文主要包含html5性能测试,html5性能,高性能html5,html5,html5教程等相关知识,教程希望在学习及工作中可以帮助到您
"); </div> App的顶部一般有titlebar,下面是list。

常见的一个需求是要在list滚动时,titlebar不动。
这个简单的需求,实现起来其实并不简单。

在普通web上的做法是使用div的滚动条,把list放到div里。
但是很不幸的是,div滚动条在Android4.4以下的手机上非常非常卡,滚动完全无法商用。

还有一种做法是把titlebar使用fix来固顶。
但此时手机浏览器的滚动条会通到顶部,当titlebar的右侧出现滚动条时,看起来非常怪异。
还有一个副作用是滚动太快时,titlebar的div会下来一下又弹上去。

有人说使用iframe,但是手机上的iframe问题非常多,很多手机不支持iframe,还有些手机的iframe里只能运行部分js,不能执行plus api,这个坑填不起。

还有一种方法是使用自绘的滚动条,即不用浏览器的滚动条,自己画一个滚动条,iScroll等方案是采取这种思路。但模拟的始终是模拟的,和原生的滚动条效果还是差很多,在列表头和尾的拉动回弹的表现不佳,而且列表长了、内容复杂了,也会卡顿。

想要解决这个问题其实也不难,既然div的滚动条卡,而浏览器body的整体滚动条不卡,那就把屏幕切分成2个webview,把titlebar的HTML装载到一个webview里,list页面是另一个webview,list页面直接使用浏览器的滚动条而不是div滚动条,这样就可以得到一个流畅的列表滑动体验。
滑动感觉和原生一模一样,在列表头尾的拉动回弹也和原生一模一样。
双webview布局有并排、覆盖、嵌套几种做法:
- 1、嵌套:在main页面里create一个list页面,append为main的子页面,摆好位置。
嵌套是比较常用的,因为嵌套后的2个webview成为一个整体,这个页面需要左滑移出屏幕时,只需要操作父页面的动画,子页面会自动根据移动。而使用非嵌套方案,要单独操作每个webview的移动动画,不容易控制同步。
- 2、覆盖和并排一般情况下用不到。

以下为嵌套的示例代码。在main页面里create一个listcontend页面,盖在main的上面,摆好位置。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <script type="text/javascript" charset="utf-8">
document.addEventListener("plusready",plusready


 

您可能想查找下面的文章:

  • 提升HTML5的性能体验系列之三 流畅下拉刷新和上拉翻页
  • 提升HTML5的性能体验系列之二 列表流畅滑动
  • 提升HTML5的性能体验系列之一 避免切页白屏

相关文章

  • 2017-05-31HBuilder 入门(1)
  • 2017-05-31hbuilder 调用日期控件(native模式)
  • 2017-05-31mui uploader上传服务器端代分享(net版)
  • 2017-05-31Hbuilder MUI 如何监听input输入框的内容变化?
  • 2017-05-31HBuilder mui 打开新页面
  • 2017-05-31MUI 某个页面全屏显示 (不显示系统状态栏)
  • 2017-05-31Hbuilder MUI 下拉刷新全屏时高度如何调整?
  • 2017-05-31iOS平台-用Native.js如何把base64数据保存为图片
  • 2017-05-31mui返回页面传参
  • 2017-05-31Native.js开启关闭蓝牙-Android平台

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HBuilder Android APP打包发布
    • mui 打开新窗口的方式总结
    • mui数百精选案例分享
    • Mui开发webapp项目demo
    • mui框架中input输入框或输入框聚焦后页面自动上移实现方法
    • 苹果开发者帐号申请以及IOS安装包打包
    • mui 在手机上打开pdf文件的方法
    • 真机运行、手机运行、真机联调常见问题
    • 请问如何在手机端缓存json数据???
    • mui web跨域问题如何解决?- mui.getJSONP()

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有