jquery.mobile 共同布局遇到的问题小结


Posted in Javascript onFebruary 10, 2015

最近项目用上了jquery.mobile这货,在手机上做点简单的显示。之前只知道有这个框架,没把玩过。

特别是事件绑定方面,相比桌面系统下浏览器用着各种不爽,不得要领。

如下图,在做后台系统时,一般左侧都是一个个模块及下属菜单项,可展开折叠。

jquery.mobile 共同布局遇到的问题小结

我的问题卡在了累计评价这块,为了页面复用,累计评价中嵌套了iframe做评论显示。

第一槛

有过移动WEB开发的同学应该知道,IOS浏览器下iframe中内容过多时,滚动条时不会出现的,内容好像被截断了。

查资料最终搞定,手机屏毕竟小,评论多的时候不可能像电脑浏览器上的页面搞一排的翻页按钮,这样体验实在太差了。

现在一般都是滚动加载,写DEMO在电脑上先跑一下,可行!换手机上,先用个android机试试,可行,满心以为可以。

换用iphone 只是滚动条的问题解决了,我的滚动加载呢。反复滑动还是没反应,心都凉了。这里要说个邪乎的事,在QQ, 微信中又是可以的,是在是怪哉。

再这么耗下去也没什么结果,还是另寻它法吧。第一想到在单独的页面去做这事。于是遇到第二槛。

<div data-role="content" style="border: solid #CCC; border-width: 0 1px;">

                    <ul data-role="listview">

                        <li><a id="pjList" href="xxx" class="ui-btn-text"  >累计评价</a></li>

                    </ul>

                </div>

上面对应累计评价部分,在点击后打开页面样式全乱了包括js事件都没执行。f12看代码,除了body 中的html 元素,head中部分,页面底部的js全没了。

要不要这么坑啊。问同事有没遇到这样的问题,说加上rel="external"就好了,别说真行。于是代码变成了如下:

<div data-role="content" style="border: solid #CCC; border-width: 0 1px;">

                    <ul data-role="listview">

                        <li><a id="pjList" href="xxx" class="ui-btn-text" rel="external">累计评价</a></li>

                    </ul>

                </div>

注:rel='external'与target=''_blank''相似,意思在新的页面打开

第三槛,也就是标题中提到的问题(头部图片是最终效果)

collapsible listview 这两伙伴水火不容,死活调不出比较好的布局效果,瞎鼓捣时加了个空的collapsible居然可以了。

最终让它们在一起了。collapsible 图标默认是+,listview项时右箭头,将图标统一。累计评价默认并不是上图那样。

<div data-role="content" style="border: solid #CCC; border-width: 0 1px;">

到此问题都扫清,完整页面如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <title></title>

    <meta charset="utf-8">

    <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" />

    <meta name="apple-mobile-web-app-capable" content="yes" />

    <meta name="apple-mobile-web-app-status-bar-style" content="black" />

    <meta name="format-detection" content="telephone=no" />

    <link rel="stylesheet" href="../Scripts/mobile/jquery.mobile-1.3.2.min.css" />

    <script src="../Scripts/mobile/jquery-1.8.3.min.js" type="text/javascript"></script>

    <script src="../Scripts/mobile/jquery.mobile-1.3.2.min.js" type="text/javascript"></script>

    <style type="text/css">

        .ui-btn-text

        {

            font: bold 14px Arial,Helvetica, sans-serif, 微软雅黑;

        }

    </style>

</head>

<body>

    <div data-role="page" id="pageone" data-add-back-btn="true" data-overlay-theme="a">

        <div data-role="content">

            <div data-role="collapsible-set" data-iconpos="right" data-theme="c" data-content-theme="d"

                data-expanded-icon="arrow-u" data-collapsed-icon="arrow-d">

                <div data-role="collapsible">

                    <h3>医院介绍</h3>

                    <p></p>

                </div>

                <div data-role="collapsible">

                    <h3>套餐相关信息</h3>

                    <p></p>

                </div>

                <div data-role="collapsible">

                    <h3>使用须知</h3>

                    <p></p>

                </div>

                <div data-role="collapsible">

                    <h3>查看地图</h3>

                    <p></p>

                </div>

                <div data-role="collapsible">

                </div>

                <div data-role="content" style="border: solid #CCC; border-width: 0 1px;">

                    <ul data-role="listview">

                        <li><a id="pjList" href="xxx" class="ui-btn-text" rel="external">累计评价</a></li>

                    </ul>

                </div>

            </div>

        </div>

    </div>

</body>

</html>

以上就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
javascript 的Document属性和方法集合
Jan 25 Javascript
javascript Event对象详解及使用示例
Nov 22 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
May 28 Javascript
jquery中filter方法用法实例分析
Feb 06 Javascript
JavaScript实现模仿桌面窗口的方法
Jul 18 Javascript
浏览器兼容性问题大汇总
Dec 17 Javascript
JS两个数组比较,删除重复值的巧妙方法(推荐)
Jun 03 Javascript
jQuery 跨域访问解决原理案例详解
Jul 09 Javascript
JS控制静态页面传递参数并获取参数应用
Aug 10 Javascript
手机端转换rem适应
Apr 01 Javascript
JS实现的简单表单验证功能完整实例
Oct 14 Javascript
在微信小程序中使用mqtt服务的方法
Dec 13 Javascript
jquery中EasyUI使用技巧小结
Feb 10 #Javascript
javascript操作符&quot;!~&quot;详解
Feb 10 #Javascript
JavaScript中的标签语句用法分析
Feb 10 #Javascript
jquery动态添加删除(tr/td)
Feb 09 #Javascript
javascript模拟map输出与去除重复项的方法
Feb 09 #Javascript
JavaScript设置body高度为浏览器高度的方法
Feb 09 #Javascript
jquery动态改变div宽度和高度
Feb 09 #Javascript
You might like
PHP教程 基本语法
2009/10/23 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
PHP getDocNamespaces()函数讲解
2019/02/03 PHP
Javascript 更新 JavaScript 数组的 uniq 方法
2008/01/23 Javascript
一个JS的日期格式化算法示例
2013/07/31 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
原生JS实现平滑回到顶部组件
2016/03/16 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
js 文字超出长度用省略号代替,鼠标悬停并以悬浮框显示实例
2016/12/06 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
2017/07/26 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
jQuery实现简易聊天框
2020/02/08 jQuery
[01:33]一分钟玩转DOTA2第三弹:DOTA2&DotA快捷操作大对比
2014/06/04 DOTA
用Python的Django框架完成视频处理任务的教程
2015/04/02 Python
浅谈Python 集合(set)类型的操作——并交差
2016/06/30 Python
pytorch 转换矩阵的维数位置方法
2018/12/08 Python
python求前n个阶乘的和实例
2020/04/02 Python
pyqt5 textEdit、lineEdit操作的示例代码
2020/08/12 Python
美国旅游网站:Tours4Fun
2017/02/17 全球购物
英国演唱会订票网站:Ticket Selection
2018/03/27 全球购物
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
The North Face北面荷兰官网:美国著名户外品牌
2019/10/16 全球购物
Prototype如何更新局部页面
2013/03/03 面试题
给儿子的表扬信
2014/01/15 职场文书
期末自我鉴定
2014/02/02 职场文书
大学生在校学习的自我评价
2014/02/18 职场文书
保安队长职务说明书
2014/02/23 职场文书
行政管理毕业生自荐信
2014/02/24 职场文书
工程售后服务承诺书
2014/05/21 职场文书
领导参观欢迎词
2015/01/26 职场文书
员工辞退通知书
2015/04/17 职场文书
《刷子李》教学反思
2016/02/20 职场文书