Jquery 移动应用程序的奇怪行为

2024-05-18

我创建了一个应用程序,其中包含多个主页按钮,单击其中一个按钮,我的应用程序将重定向到某个视图,其中包含 JQM 表单、JQM 日历、文本字段、按钮和数据库等......

我的问题是,当我在 Android 设备上测试我的应用程序时,即使我没有使用任何图像或任何可以包含更多空间的数据,应用程序的运行速度也有点慢。这是我的第一个查询,第二个查询是,当我在 Android 平板电脑上测试我的应用程序时,表单页面出现了一段时间,突然它自动重定向回主页,而同样的功能对于 Android 手机运行良好。

为什么会出现这个奇怪的问题?

如果有人能指导我,那将是我的荣幸


很难对性能缓慢和重定向问题做出假设。下面您可以找到我认为影响由 HTML5、CSS3、JavaScript 组成的移动应用程序性能的一些方面,应在分析、设计和开发阶段予以考虑。

根据尺寸实现方法

开发小型移动应用程序时,建议使用使用内部 AJAX 页面链接的单个 HTML 页面。对于较大的移动应用程序,建议使用具有内部 AJAX 链接的不同 HTML 页面的方法。尝试创建可重用的页面模板。

页面转换

如中所述jQM 1.1.1 文档 http://jquerymobile.com/demos/1.1.1/docs/pages/page-transitions.html,默认情况下,除淡入淡出之外的所有过渡都需要 3D 变换支持。缺乏 3D 支持的设备将回退到淡入淡出过渡,无论指定的过渡如何。 jQM 这样做是为了主动从高级过渡中排除 Android 2.x 等性能不佳的平台,并确保它们仍然拥有流畅的体验。请注意,有些平台(例如 Android 3.0)在技术上支持 3D 变换,但动画性能仍然较差,因此这不能保证每个浏览器都 100% 无闪烁。考虑上述因素后决定您将使用的过渡类型。

缩小 JS 和 CSS 文件

每个页面都应该尽可能轻量。缩小的目标是保留代码的操作质量,同时减少其总体字节占用量。 WEB 上有很多可用的工具,例如YUI压缩器 http://developer.yahoo.com/yui/compressor/, the Minify http://code.google.com/p/minify/还有很多。此外还有类似的工具JLint http://www.jslint.com/用于检查JavaScript源代码是否符合编码规则。JLint http://www.jslint.com/是一个代码质量工具,用于检查 JavaScript 代码中的问题。报告的问题不一定是语法错误,而可能是结构问题。请注意,JLint 并不证明您的代码是正确的。将其视为一个帮助工具。还有一些用于执行 CSS 优化的工具。优化可帮助您获得更小的 CSS 文件大小和更好的编写代码。你可以在 WEB 上找到很多可用的 CSS 优化器,例如CleanCSS http://www.cleancss.com/index.php and CSSTidy http://csstidy.sourceforge.net/.

组件限制

建议将 HTML 页面限制为 25kb,以便为大多数移动 Web 浏览器获得最佳缓存优势。缓存限制因操作系统版本而异。例如,Android 2.1 的缓存限制约为 2Mb。

HTML5 和 CSS3

尝试创建易于阅读、扩展和可重用的代码。充分利用 HTML5 和 CSS3 的优势非常重要。 HTML5 DocType 声明(<!DOCTYPE html>) 应该是 HTML5 文档中 html 标记之前的第一个内容。它是向 Web 浏览器发出的有关页面使用什么版本的 HTML 编写的指令。

Use the W3C mobileOK 检查器 http://validator.w3.org/mobile/

The W3C mobileOK 检查器 http://validator.w3.org/mobile/是 W3C 提供的一项免费服务,可帮助检查 Web 文档的移动友好性级别,特别是断言 Web 文档是否适合移动设备。当网页通过所有测试时,它就可以移动。测试在 mobileOK 中定义基本测试 1.0 规范 http://www.w3.org/TR/mobile-bp/。要理解为什么检查 Web 文档的移动友好性确实很重要,可能值得强调有关所谓移动世界的几点。与普通台式电脑相比,移动设备乍一看可能被认为是有限的:屏幕尺寸较小、处理能力较小、内存量较小、没有鼠标等等。与固定数据连接相比,移动网络速度可能很慢,并且通常具有较高的延迟。与坐在计算机前的用户相比,移动用户的时间有限并且很容易分心。除了这些限制之外,移动世界高度分散:许多不同的设备,每个设备都定义了一组独特的支持功能。

考虑不同屏幕尺寸上的外观

针对不同的屏幕尺寸时,应考虑屏幕密度、视口尺寸和网页的比例。视口元数据可用于定义视口大小,其中视口是绘制页面的容器区域。视口比例定义应用于网页的缩放级别。 target-密度dpi视口属性和CSS、JS技术可用于更改网页的目标屏幕密度。网络上有很多关于不同屏幕尺寸上的外观的文章。

识别具有潜在延迟的流量

The PageSpeed Firefox/Chrome 扩展 https://developers.google.com/speed/pagespeed/可用于检查页面速度。当您使用 Page Speed 分析网页时,它会评估该页面是否符合许多不同的规则。这些规则是通用的前端最佳实践,您可以在 Web 开发的任何阶段应用。该扩展提供了有关如何最好地实施规则并将其纳入开发过程的具体提示和建议。

我希望这有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jquery 移动应用程序的奇怪行为 的相关文章

随机推荐

  • Date-fns parseISO 返回错误日期

    您好 我从 Date fns 得到错误的日期 我正在使用 date fns 格式格式化 new Date format date yyyy MM dd 所以当我console log时 会发生这种情况 console log dateOfB
  • 部分唯一索引不适用于冲突子句 PostgreSQL

    表结构 create table example a id integer b id integer c id integer flag integer 部分索引 create unique index u idx on example a
  • AVCaptureSession 具有多个方向问题

    我正在尝试实现条形码扫描仪 我有一个 AVCaptureSession 它从 AVCaptureDevice 接收视频 我想支持所有方向 使用以下代码 当我运行应用程序时 纵向一切正常 然而 在横向方向上 视图会旋转 但视频输入不会旋转 所
  • Angular 7:ng 测试挂起,不断重复运行测试

    我最近将 Angular 6 应用程序迁移到角7 my 包 json看起来像这样 name myApp version 3 0 0 license MIT scripts ng ng start ng serve public host h
  • 如何确定当前使用哪个网格选项

    我将 Bootstrap 3 用于使用 PHP 和 HTML 创建的网页 随着响应式网格和类的开启引导程序3您可以将多个类分配给一个 div 以根据当前屏幕尺寸定义不同的宽度 例如 div class col lg 3 col md 3 c
  • 如何在java中找到类路径上的资源?具体以 .hbm.xml 结尾的内容

    如何在java中找到类路径上的资源 特别是以 hbm xml 结尾的内容 我的目标是获取类路径上以 hbm xml 结尾的所有资源的列表 你必须得到一个类加载器 http java sun com j2se 1 5 0 docs api j
  • Flutter:将字符串转换为 Map

    我正在使用 SQFlite 在本地存储数据 我有一个表 其中有一个名为 json 的字段 该字段的类型为 TEXT 并存储转换为字符串的 json 例如 name Eduardo Age 23 性别男 到目前为止 一切正常 但随后我需要从数
  • 如何使用 xpath 检查某个对象在网页中是否可见?

    我正在 R 中使用 RSelenium 包来进行网络抓取 有时加载网页后 需要检查某个对象在网页中是否可见 例如 library RSelenium open a browser RSelenium startServer remDr lt
  • 如何在golang中创建一个充满“000000...”数据的10MB文件?

    我打算在日志或磁盘队列等系统中使用 fdatasync 首先是在 ext4 等文件系统中创建一个带有 000000 的 10MB 文件 但我不知道如何正确地做到这一点 jnml fsc r630 src tmp SO 16797380 ls
  • 如何使用@PreviewParameter注解?

    我正在尝试预览一个以一个字符串参数作为输入的可组合项 我不知道如何 PreviewParameter应该使用注释 这是我尝试过的 class DogProvider PreviewParameterProvider
  • 服务器上的 Rails 会话

    我想让一些 Rails 应用程序在不同的服务器上共享同一个会话 我可以在同一服务器内完成此操作 但不知道是否可以在不同服务器上共享 有人已经做过或者知道怎么做吗 Thanks Use the 数据库会话存储 https github com
  • 在 iOS 上使用 Web 服务的最佳方式?

    我想构建一个 iOS 应用程序 让您登录到网络服务 之后 应用程序将 当用户选择时 通过 https 发送登录名 密码以及请求的变量 例如 在请求 新闻更新 后 它将收到 XML 格式的请求信息 类似于
  • 从 df 中提取具有两列的重叠行对

    我想找出这两个表之间哪些对重叠 gt dput data1 structure list Name x c MDH1 MDH1 IDH2 IDH2 IDH2 IDH2 IDH2 IDH2 IDH2 SCOALB SCOALB CSY4 CS
  • 使用无符号整数时循环条件停止于 0?

    我有一个必须从 N 到 0 含 的循环 我的i变量的类型size t通常是无符号的 我目前正在使用以下代码 for size t i N i size t 1 i 那是对的吗 有没有更好的方法来处理这种情况 Thanks Vincent 是
  • Play:获取默认数据库的连接

    我想获得与我在写入时定义的数据库实例的连接应用程序配置文件 db default driver com mysql jdbc Driver url jdbc mysql localhost test username password Th
  • 如何在 Django QuerySet 中将 DateField() + TimeField() 转换为本地时间?

    我的模型为这些字段 date models DateField 开始时间 models TimeField 结束时间 models TimeField 我想用以下方式注释查询集start datetime and end datetime
  • ExpandableListView / 滑动菜单中的向下钻取

    这里是当前用户界面对于侧面菜单 这是一个应用程序的图像DRILL DOWN or Expandable ListView Menu 如何为第一张图片创建相同的菜单 UI 看起来您已经发布了另一个类似的问题 其中我提供了几个指向教程的链接以及
  • 将html表格保存到excel中[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须编写一个程序 定期读取网页并将
  • 需要 SQL 查询澄清[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个由以下列组成的表 billid patientid doctorid fees 如何显示治疗多名患者的医生 尝试了以下代码并得到了
  • Jquery 移动应用程序的奇怪行为

    我创建了一个应用程序 其中包含多个主页按钮 单击其中一个按钮 我的应用程序将重定向到某个视图 其中包含 JQM 表单 JQM 日历 文本字段 按钮和数据库等 我的问题是 当我在 Android 设备上测试我的应用程序时 即使我没有使用任何图