用javascript写自定义类
function GridDataClient() {
   this.isfixedheader=true;//是否允许固定表头
   ……
   this.fixedHeader = function() {
       ……
   }
   this.reset = function() {
       ……
   }
}问题:1.如何定义只读属性?
      2.方法如何内部调用?如在fixedHeader调用reset另外,有没有好看的菜单,点击按钮弹出菜单,就是那种在左侧可以打勾的,大家推荐一下!今天csdn怎么老出错呀,发个帖子真不容易,郁闷

解决方案 »

  1.   

    闭包能解决你所有的问题:
    function GridDataClient() {
      var localVar='哈哈,你改不了我的';
      
      this.getVar = function() {
         return localVar;
      };
       
      var that = this;
      this.fixedHeader = function() {
         that.reset();   
      };
      this.reset = function() {
      ……
      };
    }
    闭包的简要介绍:http://www.cnblogs.com/ciznx/articles/use-closure-in-javascript-to-extend-scope.html
    闭包的更多介绍:http://www.google.com/#hl=en&q=closure+in+javascript
      

  2.   


            
            function MyClass(){
                var myPro = "csdn";
                this.getPro=function(){
                    return myPro;
                }
            }
            var m = new MyClass();
            alert(m.getPro())
      

  3.   

    多谢,刚才没仔细看!有没有好看的菜单,点击按钮弹出菜单,就是那种在左侧可以打勾的,大家推荐一下!
    另外,that.reset(); 可以,为啥setTimeout("that.reset()",500);不行呀
      

  4.   

    setTimeout("that.reset()",500);
    this的作用域可能改变了,没看到完整代码不太清楚。
      

  5.   

    Menu