<script language="javascript" >
    window.onload=function(){
           if(document.getElementById){
...........................
              }  //请问一下getElementById是个方法 为什么不加()呢,,,, 
        }
</script>

解决方案 »

  1.   

    如果不加()的话 就是不执行该方法了呗
    简单的解释下
    if(document.getElementById) { //如果document.getElementById存在,即不是undefined或null的话。
        //通常会在这个里面调用这个方法。
    }//这样做的目的是为了防止调用一个方法,而这个方法不存在而出现的错误
      

  2.   

    检测一个对象的属性 
       
      alert(window.op)// undefined 说明这个对象属性不存在 如果是个方法,, 
      
      

  3.   

    方法也是一样阿
    考虑这样的代码var a = {
      test1 = function() {},
      test2 = "abcdef"
    }test1和test2都是a的属性
    不过test1是可执行的。即他的值是一个函数。
    同样对待
      

  4.   

    楼主这里是检测document.getElementById
      

  5.   

    document.getElementById
    是获取ID
      

  6.   


    var doc = new Object();
    doc.getElementById = function(){
        alert('我是doc的getElementById方法。我执行了~');
    }
    if(doc.getElementById){
        alert(true);
    }else{
        alert(false);
    }
    if(doc.getElementById()){
        alert(true);
    }else{
        alert(false);
    }javascript中 括号()代表执行括号前的函数。
    javascript中数据的类型中有一种Function类型,这种类型的数据在使用括号执行后返回return语句返回的内容,如果没有return,则默认返回undefined,undefined转换成布尔值就是 false;
    javascript中的对象的方法可以看做是该对象的属性,只是这个属性的数据类型是Function类型。
    doc.getElementById如果存在,实质上就是是一个Function类型数据,转换成布尔值是true;
    doc.getElementById()实质上是这个函数执行后的结果,就是return出来的东西,我这个例子函数没return,就是undefined。document的getElementById函数的返回值是一个element,但是你用括号执行的话,没有传递足够参数,应该报错或者是return null(没测试,自己试试吧。),转换成布尔值永远是false
      

  7.   

    if(document.getElementById) { //如果document.getElementById存在,即不是undefined或null的话。
        //通常会在这个里面调用这个方法。
    }
    大虾说的很明显了.
      

  8.   

    这里是检测document.getElementById是否存在,
    如果是带括号的话,那就变成函数调用了。