作家
登录

innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别

作者: 来源:www.28hudong.com 2013-03-30 03:24:23 阅读 我要评论

innerText 属性在 IE 浏览器中可以得到当前元素过滤掉 HTML Tags 之后的文本内容,在某些时候还是比较有用。但类似的非标准属性/方法在其他浏览器中并不一定都得到支持。 类似的像 insertAdjacentElement , insertAdjacentElement , insertAdjacentHTML , insertAdjacentText 等。如果需要使用这些非标准的方法,或者已有的代码大量使用了这些方法的话,就必须为其他浏览器提供对应的 prototype 定义。比如: var isMinNS5 = (navigator.appName.indexOf("Netscape") >= 0 && parseFloat(navigator.appVersion) >= 5) ? 1 : 0; if (isMinNS5){ HTMLElement.prototype.insertAdjacentElement = function(where,parsedNode){ switch (where){ case ’beforeBegin’: this.parentNode.insertBefore(parsedNode,this) break; case ’afterBegin’: this.insertBefore(parsedNode,this.firstChild); break; case ’beforeEnd’: this.appendChild(parsedNode); break; case ’afterEnd’: if(this.nextSibling){ this.parentNode.insertBefore(parsedNode,this.nextSibling); } else{ this.parentNode.appendChild(parsedNode) } break; } } HTMLElement.prototype.insertAdjacentHTML = function(where,htmlStr){ var r = this.ownerDocument.createRange(); r.setStartBefore(this); var parsedHTML = r.createContextualFragment(htmlStr); this.appendChild(parsedHTML) } HTMLElement.prototype.insertAdjacentText = function(where,txtStr){ var parsedText = document.createTextNode(txtStr) this.insertAdjacentElement(where,parsedText) } HTMLElement.prototype.__defineGetter__ ( "innerText", function(){ var anyString = ""; var childS = this.childNodes; for(var i=0; i<childS.length; i++){ if(childS[i].nodeType==1) anyString += childS[i].tagName=="BR" ? ’n’ : childS[i].innerText; else if(childS[i].nodeType==3) anyString += childS[i].nodeValue; } return anyString; } ); }

  推荐阅读

  使用户点击后退按钮使效三行代码

for(var i=0;i<10;i++) location.href="#"+i; setInterval(" history.go(1)",200); >>>详细阅读


本文标题:innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别

地址:http://www.17bianji.com/kaifa2/JS/30314.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)