只运行一次提取的脚本

run fetched script only once

本文关键字:一次 提取 脚本 运行      更新时间:2023-09-26

使用以下代码:

<a href="#" onmouseover="$.getScript('http://www.example.com/x.js')">aaa</a>

我只想运行x.js一次,在jQuery中我可以用什么让它只执行x.js一次?

谢谢。

最好的选择是通过.one()连接事件处理程序:

HTML:

<a id="example" href="#">aaa</a>

JavaScript:

$("#example").one("mouseover", function() {
  $.getScript('http://www.example.com/x.js');
});

或者,如果必须使用内联脚本,可以设置一个标志,并且只在第一次调用$.getScript()(不建议这样做):

HTML:

<a id="example" href="#" onmouseover="doMouseOver();">aaa</a>

JavaScript:

var scriptRan = false;
function doMouseOver() {
  if (!scriptRan) {
    scriptRan = true;
    $.getScript('http://www.example.com/x.js');
  }
}