• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Javascript教程:innerText属性在火狐实_js

javascript 搞代码 7年前 (2018-06-13) 155次浏览 已收录 0个评论

文章简介:为firefox实现innerText属性。

很多代码写了又忘忘了又写,很浪费,所以决定养成做笔记的习惯。

知识点:

0、为什么要innerText?因为安全问题

1、为firefox dom模型扩展属性

2、currentStyle属性可以取得实际的style状态

http://www.gaodaima.com/29595.html

3、IE实现innerText时考虑了display方式,如果是block则加换行

4、为什么不用textContent?因为textContent没有考虑元素的display方式,所以不完全与IE兼容

<html>
<body>
<div id="d1"><a href="aa">ccc</a>ddd<div>eeee</div>fff</div>
<script type="text/JavaScript">
<!–
//
//
patch of innerText for firefox
//
(function (bool) {
function setInnerText(o, s) {
while (o.childNodes.length != 0) {
o.removeChild(o.childNodes[
0]);
}

o.appendChild(document.createTextNode(s));
}

function getInnerText(o) {
var sRet = "";

for (var i = 0; i < o.childNodes.length; i ++) {
if (o.childNodes[i].childNodes.length != 0) {
sRet
+= getInnerText(o.childNodes[i]);
}

if (o.childNodes[i].nodeValue) {
if (o.currentStyle.display == "block") {
sRet
+= o.childNodes[i].nodeValue + "/n";
}
else {
sRet
+= o.childNodes[i].nodeValue;
}
}
}

return sRet;
}

if (bool) {
HTMLElement.prototype.__defineGetter__(
"currentStyle", function () {
return this.ownerDocument.defaultView.getComputedStyle(this, null);
});

HTMLElement.prototype.__defineGetter__("innerText", function () {
return getInnerText(this);
})

HTMLElement.prototype.__defineSetter__("innerText", function(s) {
setInnerText(
this, s);
})
}
})(
/Firefox/.test(window.navigator.userAgent));
//–>
</script>

<script type="text/javascript">
<!–
var d1 = document.getElementById("d1");

alert(d1.innerText);
d1.innerText = "xxx";
//–>
</script>
</body>
</html>

欢迎大家阅读《Javascript教程:innerText属性在火狐实…_js,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Javascript教程:innerText属性在火狐实_js

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址