最近为了给客户演示手机应用所以使用jquerymobile,asp.net mvc做了一个简单的例子,满足如下要求较好的界面显示以及离线应用。下面大体描述一下过程:

1,使用nuget里的51Degrees.mobi进行客户端类型的判断,手机访问的话自动重定向到mobile的area下,遇到的问题:mobile下的AreaRegistration调用RegisterArea时要使用命名空间

2,是jqmobile和razor进行前台的显示,使用jqmobile的进行信息的显示等比较好处理,但是产生的问题是对于授权这种重定向,由于jqmobile使用的是ajax获取的方式获得内容填充page显示,使用ajax获取时xmlhttprequest自动进行了重定向获取了重定向后的内容,而在success里无法获得重定向的header导致的问题就是页面上显示的路径是不正确的,比如用户访问某个controller的方法的时候如果没有授权定向到登录页但是在jqmobile的主页面dom上增加的page的fileurl指向的是controller的路径而不是授权的controller的路径,解决方法,可以都修改为使用ajax的方式进行授权登录的验证成功的换前台进行changepage,或者使用razor渲染的时候进行判断,如果没有登录就渲染一个指向登录的链接

3,使用persitencejs和相应的jqmobile插件进行数据的缓存。主页面设置cache.manifest,同时缓存其他常脚本,css等。修改jquery的原生ajax方法在联网的情况下全部用原始的ajax获取数据,不联网的情况下获取本地localdatabse缓存的数据。缓存时要删除旧的缓存数据只添加当前ajax请求对应路径的最新的html,这儿遇到一个问题就是persitence的数据操作使用callback的方式进行数据的查找而callback执行的时间不确定所以数据的删除和添加都要写到callback里而不要再callback里写删除在外层写添加。还有一个问题是在线的检测问题,查看htmldemo网站发现safari和chrome都不支持onLine的检测,所以后来改用定时轮询特定页的方式实现在线监测

使用笔记本上的chrome测试程序再联网和断网的情况下可以正常运行,但是使用我的milestone(2.1)在线的情况下测试完全没有问题,但是切换到飞行模式后ajax请求都会进入到error中,使用about:debug打开android的log显示查看本地数据的缓存和轮询检测都没问题,但是ajax都返回了error后来去掉cache.manifest就可以了,但是去掉后又无法访问离线页面,在android2.2的虚拟机上测试没有问题,可能是浏览器实现上有差异

源代码

转载于:https://www.cnblogs.com/sdhjl2000/archive/2011/03/24/1994358.html

Html5+razor+jqmobile尝鲜相关推荐

  1. 采用HTML5搭建的多个网站尝鲜试用

    采用HTML5搭建的多个网站尝鲜试用 2010-04-06 16:04:57 作者:不详 来源:站长之家 浏览次数:371 网友评论 0 条 HTML5作为HTML标准的下一个版本,包含了很多新特性, ...

  2. 基于 Blazui 的 Blazor 后台管理模板 BlazAdmin 正式尝鲜

    简介 BlazAdmin 是一个基于Blazui的后台管理模板,无JS,无TS,非 Silverlight,非 WebForm,一个标签即可使用. 我将在下一篇文章讨论 Blazor 服务器端渲染与客 ...

  3. galaxy android 8,三星终于正式升级安卓8.0!Galaxy S8尝鲜

    原标题:三星终于正式升级安卓8.0!Galaxy S8尝鲜 经过长时间的测试,在友商陆续吃上奥利奥之后,三星终于开始向Galaxy S8/S8+正式推送安卓8.0,也带来了新的Experience U ...

  4. 鸿蒙系统开发者公测,公测尝鲜开启!华为Mate40/P40开始和安卓渐行渐远

    目前华为官方发布公告,华为EMUI的微博等相关官方媒体账号全部更名为HarmonyOS,这也意味着HarmonyOS将会成为华为在软件系统层面的重心,彻底替代基于Android的华为EMUI. 至于那 ...

  5. 华为鸿蒙去哪里更新,华为鸿蒙OS正式尝鲜版名单更新,升级?还是不升级?

    原标题:华为鸿蒙OS正式尝鲜版名单更新,升级?还是不升级? 请点击[关注],获取更多数码资讯 华为鸿蒙系统正式版本已经开始推送,公测尝鲜版与正式尝鲜版机型名单已经更新:"Mate40系列.M ...

  6. K3s初探:Rancher架构师带你尝鲜史上最轻量Kubernetes发行版

    发布不到两天,GitHub上Star数已近3000,这个业界大热的.史上最轻量的开源Kubernetes发行版,你试过了没? Rancher资深架构师来教你走出尝鲜第一步!使用教程在此! 前 言 昨天 ...

  7. 特斯拉自动驾驶新能力:识别红绿灯停车标识;尝鲜车主:实用好用

    白交 发自 凹非寺  量子位 报道 | 公众号 QbitAI 特斯拉,现在可以买到的最有智能化体验的汽车. 撇开安全话题,自动驾驶的能力和功能,一直走在行业最前沿. 这不,城区道路驾驶里,连交通信号灯 ...

  8. android oppo 权限,OPPO Reno可尝鲜Android Q:教程如下

    原标题:OPPO Reno可尝鲜Android Q:教程如下 5月8日凌晨,Android Q在谷歌I/O开发者大会上正式亮相.在I/O大会现场,谷歌公布了首批Android Q升级名单,其中OPPO ...

  9. 前端每周清单第 49 期:Webpack 4 Beta 尝鲜,React Windowing 与 setState 分析

    前端每周清单专注前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点:分为新闻热点.开发教程.工程实践.深度阅读.开源项目.巅峰人生等栏目.欢迎关注[前端之巅]微信公众号(ID: fron ...

最新文章

  1. 如何使用charles对Android Https进行抓包
  2. 基于以太坊的分布式投票系统solidity合约代码
  3. 编程实现 4 条重写规则,可生成半法式和法式
  4. 《最强蜗牛》运营分析:这个奇葩放置游戏的乐趣在哪里?
  5. MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔
  6. JAVA垃圾收集机制剖析
  7. 前端开发在uc浏览器上遇到的坑
  8. java后端需要注意的事项_【后端开发】Java中关于null的含义以及使用中要注意的事项...
  9. 点云投影_激光点云变换到图像平面并保存成int16灰度图一帧激光点云+一张RGB图像得到彩色点云
  10. Treejs+EasyUI+Vuejs实操
  11. 计算机学院方阵入场词,学校运动会方阵入场解说词
  12. mysql如何源码安装_超详细的MySQL源码编译安装与配置 值得收藏!
  13. I350系列服务器网卡驱动,Intel英特尔网卡驱动
  14. 计算机启动时硬盘指示灯不亮,电脑启动时没有自检声,硬盘指示灯不亮
  15. 网易云热评 《十年》
  16. WordPress SEO优化:纯代码添加canonical标签
  17. 笔记本电脑使用的11个酷炫技巧
  18. 物联网开发笔记(9)- 使用Wokwi仿真MicroPython on ESP32开发板实现温度和湿度检测并使用屏幕显示
  19. QT学习-超漂亮的软件登录界面模块
  20. ubuntu 使用代理服务器 squid

热门文章

  1. 【视频课】生成对抗网络经典任务,详解基于GAN的图像生成算法!
  2. 【杂谈】GAN对人脸图像算法产生了哪些影响?
  3. 全球及中国清洁能源发电行业需求容量及应用前景分析报告2021-2027年
  4. 中国智慧城市前瞻及开发运营可行性分析报告2022-2027年版
  5. 计算机安全设,默认的安全性还不够!这几个保护计算机的步骤要设置好
  6. 袁隆平等专家联袂直播 启动农民丰收节交易会消费季活动
  7. C#构造函数、私有构造函数、静态构造函数与构造函数执行顺序
  8. JavaScript函数练习
  9. 【链表】BZOJ1588: [HNOI2002]营业额统计
  10. Bypass WAF Cookbook