$(AID).onclick=function(){CloseNewsLayer(AID,divID,imgID,tempFlag)};
这样的方法加载这个CloseNewsLayer会执行一次这个方法
我现在要的效果是给$(AID).onclick加上这个方法,但是加的时候不要执行一次CloseNewsLayer

解决方案 »

  1.   

    不清楚,你这么写不是不执行CloseNewsLayer这个方法么?
      

  2.   


    $(AID).onclick = function(){
         return function CloseNewsLayer(AID,divID,imgID,tempFlag){
         
                }
    }
      

  3.   

    加载的时候就是不执行啊。你的需求写错了吧?<div id="test">test</div>
    <script type="text/javascript">
    function $(str){return document.getElementById(str);}
    var AID = "test";
    function CloseNewsLayer(){
    alert("executed");
    }var divID = "t";
    var imgID = "t";
    var tempFlag = "t";
    $(AID).onclick=function(){CloseNewsLayer(AID,divID,imgID,tempFlag)};
    </script>
      

  4.   

    我触发的时候才执行这个CloseNewsLayer.不是动态绑定的时候就执行.因为动态绑定上去就会执行一次函数
      

  5.   

    $(AID).onclick=function(){CloseNewsLayer(AID,divID,imgID,tempFlag)}; 
    只要你这样写,不会绑定的时候就执行
      

  6.   

    我的$(AID)是一个A标签.会不会是A标签的ONCLICK的原因?
      

  7.   


    function CloseNewsLayer(AID,divID,imgID,flag)
    {   
        var tempFlag=flag;
        if(tempFlag=="1")
        {   
            $(divID).style.display="none";
            $(imgID).src="../images/btn_expand.gif";
            tempFlag="0";
        }
        else
        {
            $(divID).style.display="";
            $(imgID).src="../images/btn_contraction.gif";
            tempFlag="1";
         }
         $(AID).onclick=function(){CloseNewsLayer(AID,divID,imgID,tempFlag)};
    }我在方法里面的第一行ALERT("test"),然后点击$(AID),会出来2次test..为什么?
      

  8.   

    你写的没问题的,CloseNewsLayer(AID,divID,imgID,tempFlag)只会在点击你绑定的那个的对象的时候触发,不会再绑定的时候去调用的
      

  9.   

    这个代码没发现问题,测试了一下点击$(AID)也只出来一次test