是否可以在使用window.location.assign加载页面后调用javascript函数?我有这个代码。
<script language="javascript" type="text/javascript">
function Loadspirit(){
window.location.assign("spirituality.php");
ReadEnglish();
}
</script>
我加载页面,然后调用ReadualEnglish(),该函数在Spirituality.php中定义。该函数不执行。使函数执行的方式是什么?
分配新的window.location后,浏览器就会开始在当前浏览器窗口中加载新页面。这将停止在此窗口中执行所有JavaScript,并开始加载新页面。从那时起,只有新页面中的javascript才能运行。如果要在新页面加载后使用函数,则必须将该代码放入新页面。如果要让该功能始终在新页面中运行,则可以将新页面中的代码设置为在加载页面时始终运行该功能。
如果只希望在从特定上下文中调用新函数时在新页面中运行该函数,那么您需要将一些信息传递给新页面,并且新页面中的代码需要查找该信息以决定是否是否运行ReadEnglish()函数。将信息传递到新页面的典型方法是
如果不是持久性设置,而是在特定时间偶尔执行此选项,通常会使用查询参数。
如果这是一个更持久的设置,通常会使用Cookie,因为cookie会一直存在,直到您告诉它消失为止。
我认为您无法做到。最好的选择是使用jquery库,然后执行以下操作:
$("body").load("spirituality.php", function() {
ReadEnglish();
});
没有过去window.location.assign
的javascript将永远不会被读取。该功能实际上使您离开页面并导航至参数。
如果您希望停留在当前页面上并可以访问spirituality.php
上的某些JavaScript,则需要通过AJAX进行加载。如果您实际上是想导航至'spirituality.php'并加载ReadEnglish();
,则需要在spirituality.php
]上调用该函数
不确定此页面上的较早答案。