在加载时运行外部JavaScript文件

时间:2016-02-13 16:47:37

标签: javascript html

我们通过webnode.nl创建了一个网站,因为我们没有足够的时间使用html制作网站。现在,我们使用带有指向此站点的链接的脚本标记,使用外部站点添加了一个小部件。但是通过这个小部件,页面加载缓慢。现在我有了在页面加载后运行脚本的想法。但我无法访问小部件的代码,我无法访问网站的HTML。我只能访问粘贴脚本标记的代码块。

脚本标记:

<script type="text/javascript" src="http://mycountdown.org/countdown.php?cp2_Hex=d21a1a&cp1_Hex=F9F9FF&img=-3&hbg=&fwdt=420&lab=1&ocd=My Countdown&text1=Valentijnsdag!&text2=valentijnsdag!&group=My Countdown&countdown=My Countdown&widget_number=3015&event_time=1455408000&timezone=Europe/Amsterdam"></script>

有人可以帮助我吗?

PS:英语不是我的第一语言,所以我不知道我的英语是否正确

2 个答案:

答案 0 :(得分:1)

将其放在<body>的末尾,并将async添加到脚本标记中,即

<script async src=""></script>

此处有更多信息:http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html还有defer属性。

  

通常你想尽可能使用async,然后推迟no   属性。以下是一些要遵循的一般规则:如果脚本是   模块化,不依赖任何脚本然后使用异步。如果是脚本   依赖于或依赖于另一个脚本然后使用延迟。如果   脚本很小,依赖于异步脚本然后使用   内联脚本,在异步脚本上方没有任何属性。

修改 你可能会更好地使用Defer:

  

在HTML解析期间推迟下载文件,并且只执行它   解析器完成后。延迟脚本也是保证   按照它们在文档中出现的顺序执行。

答案 1 :(得分:0)

如果您可以编写脚本块,则在您允许使用的任何内容中写下以下内容。

&#13;
&#13;
<script>
  // Create a <script ...></script> element
  var widget = document.createElement('script');

  // Set src="URL_of_widget"
  widget.setAttribute('src', 'http://mycountdown.org/countdown.php?cp2_Hex=d21a1a&cp1_Hex=F9F9FF&img=-3&hbg=&fwdt=420&lab=1&ocd=My Countdown&text1=Valentijnsdag!&text2=valentijnsdag!&group=My Countdown&countdown=My Countdown&widget_number=3015&event_time=1455408000&timezone=Europe/Amsterdam');
  
  // Set async
  widget.setAttribute('async', 'async');

  // Insert <script> as the last element child of <body>
  document.body.appendChild(widget);
</script>
&#13;
&#13;
&#13;