Javascript重载页面
Javascript Reload Page
为了在不完全重新加载所有内容的情况下重新加载页面,我使用:
window.top.location=window.top.location;
然而,由于某些原因,当有锚文本时,这不起作用。在这种情况下,它似乎什么也不做,但更可能的是它刷新了锚。
有没有修复这个问题,将重新加载页面(如上所述),而不重新加载缓存的图像和脚本?
尝试使用location.reload(false)
正如MDN所说,第二个参数是一个布尔值,表示是否绕过缓存。false
继续使用缓存,如您所愿。
icktofay解释了解决方法,所以我只是解决这个问题:
然而,由于某些原因,当有锚文本时,这不起作用。在这种情况下,它似乎什么也不做,但更可能的是它刷新了锚。
HTML 5描述了Location接口,涵盖了document.location
的赋值。
当调用assign(url)方法时,UA必须解析相对于入口脚本的基本url的参数,如果成功,则必须将浏览上下文导航到指定的url。
所以导航操作只看到一个绝对URL,所以分配一个片段和分配一个绝对URL是没有区别的,这个绝对URL与带有片段的页面URL相同。
导航8片段标识符:将URL解析器算法应用于新资源的绝对URL和正在导航的浏览上下文的活动文档的地址。如果结果解析URL的所有组件(忽略任何片段组件)都是相同的,并且新资源将使用HTTP GET或等效方法获取,并且新资源的解析URL具有不为空的片段组件(即使它为空),则然后导航到该片段标识符并中止这些步骤。
最后,导航到一个片段标识符说
当用户代理需要滚动到片段标识符时,它必须使用在CSSOM视图规范中定义的视图算法中滚动一个元素来改变文档的滚动位置,并设置对齐到顶部标志,或者执行一些其他操作,使文档的指定部分引起用户的注意。
完全确定页面本身被重新加载,而其他缓存元素没有被加载的最好方法是更改位置。带随机参数的查询字符串
例如,location.search='?'+Math.random();
缓存没有被绕过,所以页面的所有元素都将从缓存中加载,但是主页本身被强制重新加载,因为HTTP需要为每个唯一的查询字符串/位置向服务器发出另一个请求。搜索值。
如果你的页面本身是一个使用查询字符串的应用程序(如file.cgi?param=xyz¶m2=abc…),那么你将不得不追加到查询字符串,而不是完全替换它:
if (location.search.length > 1)
location.search+='&'+Math.random();
else
location.search='?'+Math.random();
我一直在为以下情况尝试所有这些:我有一个复杂的页面,其中客户可以保存带有产品列表的项目。现在我想让客户打开一个新页面来下载报告,同时保持父页面完整,打开手风琴等。
使用IE8仍然运行XP的客户在打开报告窗口后会出现父页面乱码。编程是用ASP编写的。NET与VB代码后面。这个方法对我很有效。
Dim proj As String = "<script language=javascript> location.assign('/Projects.aspx');
window.open('Report.aspx?project=" & projid.Text & "&rpt=bill');</script>"
Session.Add("AddCart", idx.ToString("N0"))
Response.Write(proj)
位置。Assign用于刷新父页面的同时窗口。Open将在新窗口中打开报告。
会话变量用于跟踪应该打开哪个手风琴行。这在Page_Load
中处理 If Not Page.IsPostBack Then
LoadProjects()
If Session("AddCart") IsNot Nothing Then
Dim idx As Integer = Session("AddCart")
ProjAccordion.SelectedIndex = idx
Session.Remove("AddCart")
ElseIf Session("CopyProj") IsNot Nothing Then
Dim idx As Integer = Session("CopyProj")
ProjAccordion.SelectedIndex = idx
Session.Remove("CopyProj")
End If
End If
使用位置。Href做到了http://www.w3schools.com/jsref/prop_loc_href.asp
- Javascript重载了括号
- 在JavaScript中重载函数
- javascript中的函数重载使两个函数名称相同,但输入数字不同
- Javascript:运算符重载
- 访问小程序的 JavaScript 是否支持重载
- JavaScript 中的方法重载
- 我可以重载JavaScript的索引运算符吗?
- 带有回调的JavaScript重载
- 如何在JavaScript中重写重载函数的一部分
- JavaScript图像构造函数重载
- 当页面请求和重载javascript函数不起作用时
- 无效的字符串长度/分配大小重载JavaScript
- 重载javascript函数有多安全
- 如何重载javascript文件
- 重载Javascript文件(包括事件,变量等)
- 我怎样才能避免重载JavaScript CallStack
- 重载javascript期间的加载指示器
- 如何重载JavaScript函数?(更改Slickgrid's编辑器)
- 如何重载JavaScript对象的相等操作符
- 通过超链接提交值而不重载Javascript页面