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 继承机制的实现(待续)
May 18 Javascript
javaScript(JS)替换节点实现思路介绍
Apr 17 Javascript
jQuery中on()方法用法实例
Jan 19 Javascript
Vue.js 2.0 和 React、Augular等其他前端框架大比拼
Oct 08 Javascript
Vuex之理解Mutations的用法实例
Apr 19 Javascript
cordova入门基础教程及使用中遇到的一些问题总结
Nov 14 Javascript
微信小程序使用input组件实现密码框功能【附源码下载】
Dec 11 Javascript
vue项目优化之通过keep-alive数据缓存的方法
Dec 11 Javascript
AngularJS修改model值时,显示内容不变的实例
Sep 13 Javascript
vue自定义表单生成器form-create使用详解
Jul 19 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
May 19 jQuery
详解Vue中$props、$attrs和$listeners的使用方法
Feb 18 Vue.js
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环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
2006/11/17 PHP
PHP中几种常见的超时处理全面总结
2012/09/11 PHP
php获取图片信息的方法详解
2015/12/10 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
初学js 新节点的创建 删除 的步骤
2011/07/04 Javascript
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2012/07/21 Javascript
node.js中的http.request.end方法使用说明
2014/12/10 Javascript
js实现有时间限制消失的图片方法
2015/02/27 Javascript
简单实现bootstrap选项卡效果
2017/02/08 Javascript
js基于myFocus实现轮播图效果
2017/02/14 Javascript
JS实现简单拖拽效果
2017/06/21 Javascript
angular使用bootstrap方法手动启动的实例代码
2017/07/18 Javascript
微信小程序使用radio显示单选项功能【附源码下载】
2017/12/11 Javascript
nodeJs实现基于连接池连接mysql的方法示例
2018/02/10 NodeJs
解决vue项目input输入框双向绑定数据不实时生效问题
2020/08/05 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
2021/02/25 Vue.js
详解Python中with语句的用法
2015/04/15 Python
在Python中使用__slots__方法的详细教程
2015/04/28 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
初探利用Python进行图文识别(OCR)
2019/02/26 Python
python全栈知识点总结
2019/07/01 Python
Django之使用内置函数和celery发邮件的方法示例
2019/09/16 Python
CSS3 3D位移translate效果实例介绍
2016/05/03 HTML / CSS
美国著名童装品牌:OshKosh B’gosh
2016/08/05 全球购物
销售文员岗位职责
2013/11/29 职场文书
《湘夫人》教学反思
2014/02/21 职场文书
三八妇女节活动主持词
2014/03/17 职场文书
怀念母亲教学反思
2014/04/28 职场文书
公司委托书怎么写
2014/08/02 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
2015年团支部工作总结
2015/04/03 职场文书
2015质检员个人年终工作总结
2015/10/23 职场文书
2016年端午节寄语
2015/12/04 职场文书
mysql事务对效率的影响分析总结
2021/10/24 MySQL
MySQL数据库Innodb 引擎实现mvcc锁
2022/05/06 MySQL