另外Class2不是我不能他的源代码吧,比如给事件加个参数什么。

解决方案 »

  1.   

    另外Class2我不能改他的源代码。上面怎么打的这么奇怪?
      

  2.   

    这样不知道符不符合你的要求
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function Class1(class2) {
        class1 = this;
    this.className = "Class1";
        this.aClass2 = class2;
        this.aClass2.onEventName = onEventNameHandler;
        this.aClass2.onEventName(); function onEventNameHandler() {
    alert(class1.className);
    }
    }
    function Class2() {
        this.className = "Class2";
        this.onEventName = null;
    }var c1 = new Class1(new Class2());
    //-->
    </SCRIPT>
      

  3.   

    <script language=javascript>
    function Class1(class2) {
        this.aClass2 = class2;
        this.className="Class1"
        obj=this;
        this.aClass2.onEventName = this.onEventNameHandler;
        this.aClass2.onEventName(obj);
    }
    Class1.prototype.onEventNameHandler = function() {
    alert(arguments[0].className)//arguments[0]就是对象1
        alert(this.className);
    }
    function Class2() {
        this.className = "Class2";
        this.onEventName = null;
    }var c1 = new Class1(new Class2());
    </script>
      

  4.   

    稍微改一下即可:
    function Class1(class2) {
        this.aClass2 = class2;
        var obj=this;
        this.aClass2.onEventName =function(){
         obj.onEventNameHandler;
        }
        this.aClass2.onEventName();
    }