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 相关文章推荐
MSN消息提示类
Sep 05 Javascript
ExtJS实现文件下载的方法实例
Nov 09 Javascript
Javascript实现简单二级下拉菜单实例
Jun 15 Javascript
一个通过script自定义属性传递配置参数的方法
Sep 15 Javascript
AngularJS 实现弹性盒子布局的方法
Aug 30 Javascript
将angular.js项目整合到.net mvc中的方法详解
Jun 29 Javascript
Angular17之Angular自定义指令详解
Jan 21 Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
Nov 05 Javascript
使用vue完成微信公众号网页小记(推荐)
Apr 28 Javascript
vue3 源码解读之 time slicing的使用方法
Oct 31 Javascript
使用Element的InfiniteScroll 无限滚动组件报错的解决
Jul 27 Javascript
VUE中V-IF条件判断改变元素的样式操作
Aug 09 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实现二分搜索树
2020/10/25 PHP
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
jquery获取div宽度的实现思路与代码
2013/01/13 Javascript
jquery click([data],fn)使用方法实例介绍
2013/07/08 Javascript
jquery 根据name名获取元素的value值
2015/02/27 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
浅谈JQ中mouseover和mouseenter的区别
2016/09/13 Javascript
JS身份证信息验证正则表达式
2017/06/12 Javascript
Nodejs实现多房间简易聊天室功能
2017/06/20 NodeJs
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
vue中post请求以a=a&amp;b=b 的格式写遇到的问题
2018/04/27 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
2019/05/12 Javascript
VUE.js实现动态设置输入框disabled属性
2019/10/28 Javascript
微信小程序网络请求实现过程解析
2019/11/06 Javascript
jQuery实现小火箭返回顶部特效
2020/02/03 jQuery
解决matplotlib库show()方法不显示图片的问题
2018/05/24 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
python简单贪吃蛇开发
2019/01/28 Python
PyCharm Anaconda配置PyQt5开发环境及创建项目的教程详解
2020/03/24 Python
Python Pivot table透视表使用方法解析
2020/09/11 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
Html5+JS实现手机摇一摇功能
2015/04/24 HTML / CSS
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
高中毕业生自我鉴定
2013/11/03 职场文书
恐龙的灭绝教学反思
2014/02/12 职场文书
销售助理岗位职责
2014/02/21 职场文书
反腐倡廉标语
2014/06/24 职场文书
2014年食堂工作总结
2014/11/20 职场文书
红色影片观后感
2015/06/18 职场文书
辞职报告(范文三篇)
2019/08/27 职场文书
SONY AN-LP1 短波有源天线放大器
2021/04/22 无线电
python 判断字符串当中是否包含字符(str.contain)
2022/06/01 Python