我想知道是否可以编写一个在创建(或可见)元素时调用的函数?
例如: 1.当您单击按钮时,将使用DOM创建ID为“area”的div。 2.当存在id为“area”的div时,运行“areaFunction”函数。
我已尝试过以下代码,但无效。
var App = {
init: function () {
if ($("#area") == true) {
areaFunction();
});
},
}
window.onload = Capsule.init;
答案 0 :(得分:4)
尝试:
if($('#area').length > 0){
areaFunction();
});
答案 1 :(得分:1)
如果您编写自己创建的函数,则可以执行以下操作:
<!DOCTYPE html>
<html>
<head>
<script>
var p = {
createDivBtnOnclick: function() {
var div = document.createElement("div");
div.innerHTML = "it's a div";
document.body.appendChild(div);
areaFuntion();
}
};
function areaFuntion() {
alert("function areaFuntion() called");
}
</script>
</head>
<body>
<input type="button" value="Create Div" onclick="p.createDivBtnOnclick()"/>
</body>
</html>
如果没有,你可以使用计时器来检查div是否存在。你可以检查如下:
if(document.getElementById("divId") != null) { areaFunction() }
答案 2 :(得分:0)
尝试删除==true
,使用if($("area").length > 0)