JavaScript中21.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《JavaScript中21.ppt》由会员分享,可在线阅读,更多相关《JavaScript中21.ppt(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、JavaScriptl JavaScript DOMl 通过calssName选取元素l 写一个函数function getElementsByClassName(),实现返回值为所传参数class类名的元素集合l function getElementsByClassName(className)lvar aEls = document.getElementsByTagName(*);lvar arr = ;lfor(var i=0;iaEls.length;i+)lif(aElsi.className = className)larr.push(aElsi);return arr;l 在标
2、准浏览器里正确的选取className为我们需要的元素l 问题:当一个class包含多个class时不会正确选中JavaScriptl JavaScript DOMl 通过calssName选取元素改l 上面的问题出现在aElsi.className = classNamel 做修改:在循环里添加一个数组将className用空格拆分l var aClassName = aElsi.className.split( );l for(var j=0;jaClassName.length;j+)l if(aClassNamej = className)arr.push(aElsi);l l 问题:
3、如果出现手误,在一个class里面写了两个相同的class时,在该方法里会把此元素选取两次l 需要在第一次找到class的时候就加一个break来跳出循环,不再查找JavaScriptl JavaScript DOMl 通过calssName选取一个范围的元素l funciton getElementsByClassName( parent,className )l 在该函数里加一个parent的参数,代表了是谁下面的classl var aEls = parent.getElementsByTagName(*);l 当需要获取所有的class时,parent = documentl 如果需要
4、获取的class为li的元素,还是通过传参来解决:l funciton getElementsByClassName( parent,tagName,className )l var aEls = parent.getElementsByTagName(tagName);JavaScriptl JavaScript DOMl 添加classl function addClass( obj, className) /封装一个添加class的方法l if( obj.className =)obj.className = className;l elseobj.className += +class
5、Name;l else里应该加一个判断,如果加的class原本存在l function arrIndexOf(arr,v)l for(var i=0;iarr.length;i+)l if(arri=v)return i;l return -1;l 写一个方法,如果存在就返回i,不存在就返回-1JavaScriptl JavaScript DOMl 添加class完整写法l function addClass( obj, className)l if( obj.className =)l obj.className = className;l elsel var arrClassName =
6、obj.className.split( );l if(arrIndexOf( arrClassName, className) =-1)l obj.className += +className;JavaScriptl JavaScript DOMl 删除classl function removeClass( obj, className) /删除classl 直接用className =,会删除所有的classl 要判断两种情况,有class和没有classl function removeClass( obj, className)l if(obj.className !=)l var
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaScript 21
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内