这是一个技术性问题,我正在尝试更深入地了解浏览器中的 javascript。
所以场景是 page1 上唯一的东西是一个链接,并且可能是一些 JS:
<script>something</script>
<a href="/page2.php">link</a>
当点击第 2 页链接时,是否可以将一些 javascript“转移”到第 2 页,以便 JS 可以在第 2 页上运行而无需原来在标记中包含任何脚本?
我在想你可以做这样的事情:
<a onClick="loadXMLDoc();" href="/page2.php">link</a>
loadXMLDoc 函数摘录:
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
window.location = "/page2.php";
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
alert('worked');
}
...
xmlhttp.open("POST","/responsedelay.php",true);
...
这个想法是向一个带有计时器的单独页面发出 ajax 请求(在 php 中),并在几秒钟后(比如 10 秒)给出响应。到那时,新页面已经加载,我们希望仍然可以通过 javascript 访问当前窗口 DOM。唉,那行不通,不足为奇,仍在尝试跳出框框思考!有任何想法吗?
我猜唯一的方法是在 page1 的上下文中打开 page2(即将第 2 页元素添加到第 1 页),但也许有一种我不知道的新颖方法!