innerText兼容處理
阿新 • • 發佈:2018-04-24
tco 如果 得到 === spa function dom html UNC
var div = document.getElementById("content");
轉載自:https://www.cnblogs.com/leejersey/p/3520497.html;稍微改了一下和加了一些註釋;
IE、Safari、Opera和Chrome支持innerText屬性。Firefox雖然不支持innerText,但支持作用類似的textContent屬性。textContent是DOM3級規定的一個屬性,而且也得到了safari、opera和Chrome的支持。為了確保跨瀏覽器兼容,有必要想下面這樣通過函數來檢測可以使用哪個屬性:(註:與之對應的還有innerHTML{這個貌似不需要兼任性處理各個主流瀏覽器內核都是一樣的處理},而jQuery的val是指elem的value屬性的值)
function getInnerText(element) {
// 先判斷獲得的元素裏是否有textContent屬性,如果沒有則這裏會是"undefined"
return (typeof element.textContent === "string") ? element.textContent : element.innerText;
}
function setInnerText(element, text) {
if (typeof element.textContent === "string") {
element.textContent = text;
} else {
element.innerText = text;
}
}
setInnerText(elem, "Hello world!");
alert(getInnerText(elem)); //"Hello world!"
innerText兼容處理