gpt4 book ai didi

javascript - 包括外部 javascript 文件

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

我正在尝试将外部 javascript 包含到文档中。假设外部js有以下代码。

function myFunction() {
console.log("hello");
}

我通过控制台将其包含

var script = document.createElement('script');
script.src = "http://myjs";
document.getElementsByTagName('head')[0].appendChild(script);

但是我仍然得到 myFunction() is undefined 错误。该函数是从页面上包含的 php 文件以某种方式调用的。有趣的是,在文档中的 head 标签后面附加我的外部 javascript 不足以使其在加载的 php 文件的函数调用之前。

问:根据我的情况,如何确保在 php 文件之前包含我的 javascript?

编辑:这是所有源的层次结构

mysubsite.com
myfolder
mypage.html

mysite.com
myfolder
main.php
problem.php

problem.php 正在调用函数 myFunction() 但它尚未包含在任何地方。因此,我尝试在外部 js 文件中定义该函数并将其包含在 mypage.html 中,但 Problem.php 仍然位于 mypage.html 中包含的 javascript 之前

编辑:

我认为真正的问题是我正在处理包含在主文档中的 iframe。在这种情况下,有没有办法将我的外部 javascript 文件包含在控制台的主文档中?包含来自控制台的脚本只会影响 iframe,而不影响主文档。

最佳答案

你正在做的事情很好,但是你必须等待文件加载。大多数浏览器都会在脚本元素上引发 load 事件,尽管某些旧版本的 IE 使用 onreadystatechanged 代替。但由于您使用的是 jQuery(来自问题的标签),您不必担心这一点,您可以只使用 $.getScript :

$.getScript("http://myjs", function() {
// The script has been loaded, you can call myFunction now
});

关于javascript - 包括外部 javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22467032/

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