猿问

各位老师还是不是很理解,能仔细说明下吗?另外还有个大写的HTMLelement

/*封装$*/

window.$=HTMLElement.prototype.$=

  function(selector){

    var elems=(this==window?document:this)

        .querySelectorAll(selector);

    return elems.length==0?null:

            elems.length==1?elems[0]:elems;

}

各位老师还是不是很理解,能仔细说明下吗?另外还有个大写的HTMLelement


慕前端8664132
浏览 1609回答 1
1回答

stone310

这里HTMLElement 就是表示 HTML 中任何的一个元素window.$=HTMLElement.prototype.$=       //将$封装成window的方法和HTMLEleent(任何元素)底下的一个方法        function(selector){                     //参数selector            var elems=(this==window?document:this)   //检测this,如果有调用对象,elems为调用对象下的selector;没有具体调用对象,elems为document下的selector;                    .querySelectorAll(selector);           //获取所有selector,获取范围由上面this检测而定            return elems.length==0?null:                 //如果elems(调用对象或者document下的selector)长度为0,返回null;长度为1,返回这个确定元素;长度>1,则返回elems(类数组)                    elems.length==1?elems[0]:elems;        }
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答