2012-02-24 83 views
2

我不知道是否有可能写当元件被创建(或可见)调用一个函数?div出现时调用函数(jQuery)?

例如: 1.当你点击一个按钮,ID为“区域”一个div获取与DOM创建。 2.当id为“area”的div存在时,运行“areaFunction”函数。

我曾尝试下面的代码,这是行不通的。

var App = { 

    init: function() { 
     if ($("#area") == true) { 
      areaFunction(); 
     }); 
    }, 
} 

window.onload = Capsule.init; 

回答

4

尝试:

if($('#area').length > 0){ 
    areaFunction(); 
}); 
+3

这也可以缩写为'if($('#area')。length){' – 2012-02-24 10:51:37

0

尝试删除==true,使用if($("area").length > 0)

1

,如果你写的函数来创建自己的div自己,你可以这样做以下:

<!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() }