静态 HTML 页面、客户端缓存和传递参数
Static HTML pages, client caching and passing parameters
我正在构建一个相当大的移动应用程序,目前构建在jQuery Mobile和KnockoutJS之上。我的第一个方法大量使用单页应用程序设计,同时通过 Knockout 和 ajax 调用加载所有动态内容和数据。这工作正常,但随着jQuery Mobile越来越多地加载到DOM中,维护和开发变得非常复杂。
我想知道如何迁移到更传统的、单独的 HTML 页面,这些页面是完全静态的,同时仍然通过 Knockout 和 ajax 加载数据。这将允许浏览器缓存应用程序的最大部分:HTML页面。
问题:
如何在不创建禁止客户端浏览器缓存的唯一 URL 的情况下最好地在页面之间传递参数?我希望浏览器积极缓存页面。
我意识到我可以实现各种服务器端缓存,但这不是我在这里的目标。 /Display/3
和/Display/5
是同一页。浏览器会将它们缓存为一个吗?
我想知道在哈希标记之后传递参数? /Display#3
和/Display#5
?如何在全局命名空间中通过 JavaScript 传递参数?
希望这里有一个标准的方法。
好吧,很抱歉造成误解,但我认为您的方法走错了路。你不能以这种方式使用GET参数,JQueryMobile在AJAX的URL处理中也有点混乱。
通常,如果使用 AJAX 刷新内容,则不需要重新加载页面。因此,您不需要缓存,因为页面已经存在,并且只有一些内容通过 AJAX 重新加载。但是 JQM 的单页方法不能以这种方式用于动态创建的内容。您只能动态创建包含所有内容的页面,JQM 通过切换可见性来显示内容。然后 # 可用于在页面之间切换(# 不会强制重新加载,如用于侧面导航)。
您可以编写自己的加载函数,调用按钮和链接(而不是使用 URL GET 参数)。通过将 JQuery 的 $.ajax 方法与 dataType "html"(而不是 json,默认)一起使用,您可以在其成功处理程序中进行内容刷新。
你可以试试html5 sessionStorage/localStorage。如果 html5 是一个问题,那么普通的旧 cookie 就是问题。澄清一下,如果有多个 HTML 页面,则每个页面都必须有自己的 URL。
- 函数参数中的数据与指定变量之间的任何性能差异
- 使用Express捕获参数
- 参数变量出现ngTable指令问题
- AngularJS:我可以跳过函数参数回调吗
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 要求未定义JS回调参数
- 我的jQuery插件参数没有正确启动,遇到了问题
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- jquery设置为使用参数运行
- Javascript”;类“;带有参数的扩展
- 如何在从浏览缓存加载页面时执行javascript
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 函数未将值作为参数传递
- 如何将参数传递到angularJs中的工厂
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 使用不同参数的超级代理缓存缓存 HTTP 响应
- 如何在Angular中缓存http直到参数更改
- 使用 RequireJS 的 URL 缓存破坏参数
- JavaScript缓存返回值的函数有多个参数
- 静态 HTML 页面、客户端缓存和传递参数