是否可以在使用 window.location.assign 加载页面后调用 javascript 函数?我有这个代码。
<script language="javascript" type="text/javascript">
function Loadspirit(){
window.location.assign("spirituality.php");
ReadEnglish();
}
</script>
我加载页面然后调用 ReadEnglish(),这是一个在 spirituality.php 中定义的函数。函数不执行。函数执行的方式是什么?
最佳答案
一旦您分配了一个新的 window.location,浏览器就会开始在当前浏览器窗口中加载一个新页面。这将停止执行此窗口中的所有 javascript 并开始加载新页面。从那时起,只有新页面中的 javascript 会运行。如果在加载新页面后需要一个功能,则必须将该代码放入新页面中。如果希望该函数一直在新页面中运行,您只需将新页面中的代码设置为在加载页面时始终运行该函数。
如果您只希望新函数在从这个特定上下文调用时在新页面中运行,那么您需要将一些信息传递给新页面,新页面中的代码需要查找该信息来决定是否运行 ReadEnglish() 函数。将信息传递到新页面的典型方式是
- URL 中的查询参数(URL 中 ? 标记后的项,如“?run=English”)。
- Cookie 中设置的信息
- 新页面已知且来源相同的其他窗口/框架中的 Javascript 变量。
如果这不是持久设置,而是在特定时间偶尔执行此选项,则经常使用查询参数。
如果这是一个更持久的设置,通常会使用 Cookie,因为 Cookie 可以一直存在,直到您告诉它消失。
关于javascript - 使用 window.location.assign 加载页面后调用 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6627983/