gpt4 book ai didi

javascript - 如何使用 jQuery 和 setTimeout() 添加 Javascript 代码

转载 作者:行者123 更新时间:2023-11-28 11:28:26 24 4
gpt4 key购买 nike

我有一些跟踪代码,提供商 (WebTraxs) 表示应将其放置在标签底部。问题是,同样的代码导致页面上的所有内容(包括我的 jQuery 代码)在执行 WebTraxs 后运行。此执行有时需要足够长的时间,而图像翻转等不起作用,因为用户在 WebTraxs 完成之前将鼠标悬停在图像上。

因此,我尝试在页面加载到文档就绪处理程序中后将所需的标签(来自 WebTraxs)添加到正文,使用以下命令:

 setTimeout(function(){

var daScript = '<script language="JavaScript" type="text/javascript" src="/Scripts/webtraxs.js" />';
var daOtherScript = '<noscript><img alt="" src="http://db2.webtraxs.com/webtraxs.php?id=company&st=img" />';

$('body').append(daScript);
$('body').append(daOtherScript);

},
5000);

我对上述内容有两个问题:

  1. 在 Firefox 中,5 秒后,页面完全变成空白。
  2. 在 IE 中,不会引发任何错误,但通常您可以看到 WebTraxs 代码尝试在状态栏中加载跟踪图像。上述代码不会出现这种情况。

有更好的方法来实现我的目标吗?我基本上只是想确保在执行文档就绪处理程序后执行 WebTraxs 代码。

最佳答案

为什么不使用 .getScript 功能:

 setTimeout(function(){

$.getScript("http://path.to/Scripts/webtraxs.js");
},
5000);

您的代码真正令人好奇的是您添加了 <noscript>使用 JavaScript 标记...它没有任何意义。如果用户没有 JavaScript,则setTimeout不会被解雇,因此它 <noscript>内容将不会显示。

I'm basically just trying to make sure the WebTraxs code is executed AFTER the document ready handler is executed.

在这种情况下,您只需执行以下操作:

$(document).ready(function(){
$.getScript("http://path.to/Scripts/webtraxs.js");
});

关于javascript - 如何使用 jQuery 和 setTimeout() 添加 Javascript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3238643/

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