我正在使用iUI框架来创建一个站点。如果你不熟悉这个,你有一个由div组成的页面,你用片段标识符在用户之间导航。
问题在于,如果您的用户添加内容,则在刷新之前它们是不可见的。在我的sistuation中,他们通过jquery帖子将数据添加到列表中,但就像我说他们在刷新之前什么都看不到,一旦你刷新它就会转移到父div,因为#fragment已经丢失了。
所以我在使用window.location = mywebsite.com/#_fragment更新后,设法让页面转到mywebsite.com/#_fragment,但实际上并没有重新加载页面。
任何人都有任何线索有如何刷新页面片段?
答案 0 :(得分:7)
URI片段标识符仅在客户端,并且不会发送到服务器,即,如果您检查HTTP请求标头,则不会看到#_fragment。此外,对仅修改片段的URI进行更改不会触发任何DOM事件。
虽然有一些变通方法可以使用setInterval()调用来主动监视document.location.hash属性,但最简单的方法是简单地更改查询字符串arg。例如,而不是:
window.location = mywebsite.com/#_fragment
包括一个查询字符串组件,如:
window.location = mywebsite.com/?refresh=1#_fragment
“?refresh = 1”(或任何其他键/值对)的存在将导致浏览器向服务器发出请求,同时保留#hash标识符。
有关JS位置对象的更多信息,请参见此处: http://docs.sun.com/source/816-6408-10/location.htm
答案 1 :(得分:1)
我相信你会使用iUI来构建iPhone友好的网络应用程序。我不确定您是否已经评估iWebkit是否相同。我查看了iUI和iWebkit,发现iWebkit功能更强大,更稳定,更安全。易于实施。