有没有办法在添加div时在单独的文件中运行函数? [没有jQuery]

时间:2016-11-04 04:49:16

标签: javascript html

我有2个外部js文件,当document.body.innerHTML添加元素时,我需要在html中调用一个函数。在添加此div时,我想要调用另一个文件中的函数。在创建元素时如何调用该函数?

//pseudo code
//first file:
document.body.innerHTML += "<div></div>"
//second file:
var foo = function() {
alert("foo");
}
//when div is added call foo.

2 个答案:

答案 0 :(得分:1)

如果代码按顺序执行,当你添加div时,函数foo还没有被定义,因为它在第二个文件中。您需要以相反的顺序加载文件,即首先加载第二个文件,然后加载第一个文件,以便在添加div时定义foo函数。然后你可以像任何其他功能一样调用它。

document.body.innerHTML += "<div></div>";
foo();

如果无法更改文件的加载顺序,可以在定义foo()之后执行第一个文件中的代码:

setTimeout(function(){
    document.body.innerHTML += "<div></div>";
    foo();
}, 0);

答案 1 :(得分:0)

我认为你需要使用jquery来监视身体以识别它:

let Object_1: CGPoint! = Sprite_Object_1.position
//this obtains the location of the sprite node, through CGPoint.
if Object_Sprite_2.contains(Object_1){
    print("Then it is true, object 2 is within the location of object 1")
}