//获得框架扩展对象
    var $ = function(element) {
        //如果是字符串,就取以该字符串为ID的扩展对象;
        //如果是对象,直接返回扩展对象
        return fn.extend(typeof element == 'string' ? document.getElementById(element) : element, fn);
    };    //创建扩展对象
    $.create = function(elementType) {
        return $(typeof elementType == 'string' ? document.createElement(elementType) : elementType);
    }    var fn = $.prototype =
    {
        //实现简单继承功能
        extend: function(dest, source) {
            for (var i in source) dest[i] = source[i];
            return dest;
        }, 
//获得框架扩展对象
    var $ = function(element) {
        //如果是字符串,就取以该字符串为ID的扩展对象;
        //如果是对象,直接返回扩展对象
        return fn.extend(typeof element == 'string' ? document.getElementById(element) : element, fn);
    };    var fn = $.prototype =
    {
        //实现简单继承功能
        extend: function(dest, source) {
            for (var i in source) dest[i] = source[i];
            return dest;
        }, 
    //创建扩展对象
    $.create = function(elementType) {
        return $(typeof elementType == 'string' ? document.createElement(elementType) : elementType);
    }

解决方案 »

  1.   

    我不知道上下文是怎样的,光这些代码中
    fn对 var $ 来说是全局的 相当于 
    fn = {} 也就是 fn = new Object()
    加上 extend属性 就是 fn.extend = function(){}
    fn.extend(typeof element == 'string' ? document.getElementById(element) : element, fn); 就是 某个DOM对象继承 fn 的所有属性(entend属性),
    换句话说 就是 通过 $得到的DOM对象 比用 getElemntById得到的多了 extend方法.
      

  2.   

    $得到的DOM对象 比用 getElemntById得到的多了 extend方法!