解决方案 »

  1.   

    搞好名字空间来var a={load:function(){alert('a')}}
    var b={load:function(){alert('b')}}
    var c={load:function(){alert('c')}}
      

  2.   


    //a.js
    (function(){
    a = {};//加一个“命名空间”
    var fn = function(){
    console.log('aaa');
    }
    a.fn=fn;
    })();
    //b.js
    (function(){
    b = {};//加一个“命名空间”
    var fn = function(){
    console.log('bbb');
    }
    b.fn=fn;
    })();
    a.fn();
    b.fn();
      

  3.   


    var MainModel = (function(){
            var _DWidth = "full";
    var MainConstrutor = function(){
    this.setDWidth = function(DWidth){
    _DWidth = DWidth;
    };
    this.getDWidth = function(){
    return _DWidth;
    };
    };
    return new MainConstrutor();
    })();
    ..........现在可以动态load多个控件在一个jsp中,但是却也生成了多个以上的函数,导致冲突;;;js菜鸟希望能讲得详细点..谢谢
      

  4.   

    var MainModel = (function(){
            var _DWidth = "full";
    var MainConstrutor = function(){
    this.setDWidth = function(DWidth){
    _DWidth = DWidth;
    };
    this.getDWidth = function(){
    return _DWidth;
    };
    };
    return new MainConstrutor();
    })();
    ..........现在可以动态load多个控件在一个jsp中,但是却也生成了多个以上的函数,导致冲突;;;js菜鸟希望能讲得详细点..谢谢
      

  5.   

    可以弄一套命名空间。也可以用sea.js 来着,他规定了一个模块化的东东,一个模块里一套js,模块间不冲突。
      

  6.   

    函数不要放在全局
    每个 .js 取个名称 
    比如本来你写
    function a()
    function b()
    function c()
    改成
    js1 = {
    a : function()
    b: function ()
    c: function() 
    }
    调用的时候就 js1.a() 
    js2.a();
    这样a 重复就不用紧了