jQuery代码没有在window.location之后调用.替换(url)
jQuery code not called after window.location.replace( url )
我有一个代码,点击链接('#versionPageFromProdLink')后,将重定向页面到索引页。包含内容的索引页。我想在页面重定向后隐藏这一点,并显示我拥有的下一个div()。
页面被重定向,但是jQuery函数在window.location之后。替换(url);
我将如何能够重定向和调用页面重定向后的jQuery ?
代码: jQuery( '#versionPageFrmProdLink').click( function(){
window.location.replace( url );
// jQuery code below is not called, <div id="versionMainContent"> is not hidden
jQuery(".versionMainContent").hide("fast", function(){
jQuery( ".versionProductContent" ).show();
});
});
如上所述,位置。替换意味着"之后"的代码将不会执行。您需要做的是添加一个散列"index.html#divCode"或其他类似的(在这种情况下您也可以使用查询字符串),然后检测onload/on文档准备索引页,然后更新那里的隐藏/显示状态
这根本不可能。
一旦你导航到一个不同的页面,前一个页面,包括它所有的Javascript,都消失了。
您必须在重定向到的页面中处理重定向后的二次执行。
的例子:
第1页
jQuery( '#versionPageFrmProdLink').click( function(){
window.location.replace( url );
}
注意,在重定向期间,您可以在URL中传递查询字符串,以检查下一页的条件。
第2页
现在你重定向到下一页。您可以放置文档。准备好功能并运行所需的
$(document).ready(function () {
jQuery(".versionMainContent").hide("fast", function(){
jQuery( ".versionProductContent" ).show();
});
问题出在你的设计上。重定向会停止执行流。您可以使用ajax进行服务器调用并继续执行。
或者,如果您喜欢,您可以执行重定向并传递URL参数,如?hideVersionMainContent=true,并执行隐藏服务器端。
还有其他方法可以完成任务,但这应该会给你一些想法。
location.replace
之后的代码在你离开的页面上运行(如果它曾经运行过;更改location
将导航从页面中移开,并且很可能在那里终止您的代码)。
您需要将要显示的信息传递给新页面,并让新页面上的代码填充统计信息。有很多方法可以做到这一点:
- 查询字符串
- 通过网络存储(
sessionStorage
可能有意义) - cookie(但不要,这不是他们的目的)
- 用问号替换的短划线字符(Ajax调用)
- 将使用 $.ajax() 和 JSONP 的 API 调用替换为服务器到服务器的 API 调用
- 如何将 JavaScript Yahoo Weather API 调用属性替换为变量
- 我需要将一个参数从另一个任务传递给gullow任务,或者用runSequence调用的函数替换一个任务
- 在使用Protractor进行测试时,我可以用json文件替换结果,而不是调用实际的REST端点
- 在 php 中 whateverorigin.org 调用替换为本地代理
- JS - 正则表达式替换在一次调用中发生多次,如何让它运行一次
- 我收到此错误:无法在 String.toJadenCase 调用未定义的方法“替换”
- 与 RTL 语言一起使用时字符串替换函数调用的顺序
- 事件调用在 ajax 替换元素后多次
- 如何将同步 ajax 调用替换为凭据以保持应用状态稳定
- 未捕获的类型错误: 无法调用 null 的方法“替换”
- 未捕获的类型错误:无法调用未定义的下划线.js的方法“替换”
- 如何将 setCallbackHandler() 替换为 Sync 调用而不是 Async
- 在 ajax 调用之前替换按钮,然后在调用后恢复
- 角度:无法调用未定义的Android浏览器的方法“替换”
- 调用 java 类时被替换的字符
- 如何将 getElementById 函数调用替换为 getElementsByClassName
- 将 href 替换为 js 函数调用
- JavaScript/jQuery链接标记替换调用