gpt4 book ai didi

javascript - 等待 HTML 中的 Javascript 函数完成

转载 作者:行者123 更新时间:2023-11-28 00:21:13 25 4
gpt4 key购买 nike

如何确保在继续执行 HTML 代码中的下一行之前完成 Javascript 函数。

例如:我在 main() 中有一个 Javascript 代码并调用它,如下所示。在此完成之前,下一行 HTML 代码(如加载 JPEG)将显示在网络浏览器中。有什么方法可以确保 main() 调用完全执行。

<script language="JavaScript" type="text/javascript"> main();</script>

有些人猜对了,在 main() 中有一个异步调用,它使用 XMLHTTPRequest() 来获取我需要的一些值来形成网页。函数main是下面的s

function main()
{
var requestor = new net.Requestor("admin/getparam.cgi?mainvideostream&codectype", CurrentHandler);
}

和 net.Requestor=function(url,onload,onerror,method,params,contentType) 在这里面是和 XMLHTTPRequest(...)

Currenthandler 是另一个处理请求响应的函数。

 function CurrentHandler()
{
settings = this.req.responseText.split("\n");
for(var j=0; j<settings.length-1; j++)
{
var currentST= settings[j].split("=");
name = currentST[0];
value = currentST[1];
switch(name)
{
case "mainvideostream": cur_camid = value; break;
case "codectype": stream = value; break;
}
}
mainSection();
}

所以我必须在加载页面之前找出流变量。

最佳答案

简短的回答是否定的,没有(安全、符合标准的)方法可以在您的脚本运行时阻止页面加载。

通常,这是通过以下两种方式之一解决的:

  1. 通过设置 CSS display 隐藏您不想显示加载的页面元素属性(property)none .在脚本末尾添加一条命令以重置这些元素的显示属性。

  2. 将最初不想加载的元素移到单独的 HTML 文件中。在脚本执行结束时,对服务器进行 AJAX 回调以获取第二个文件并将其加载到主文件中的适当位置。

关于javascript - 等待 HTML 中的 Javascript 函数完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8746997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com