1. 程式人生 > >innerText的相容性處理

innerText的相容性處理

html程式碼如下

<div id="box">
	hello
</div>

如何知道,瀏覽器是否支援元素的某個屬性呢?

var box = document.getElementById('box');
console.log(typeof box.a)  // ====> undefined
console.log(typeof box.id)  //  返回屬性的型別

使用typeof方法檢測瀏覽器是否支援元素的某個屬性:

  • 當屬性不存在的時候返回的是undefined
  • 當屬性存在的時候返回的是 該屬性的型別

通過這種方式可以寫出innerText的相容處理程式碼

var box = document.getElementById('box');
console.log(getInnerText(box));

// 處理innerText的相容性問題
function getInnerText(element) {
	// 判斷當前瀏覽器是否支援元素的innerText屬性,支援innerText使用element.innerText獲取內容
	// 如果不支援innerText屬性,使用element.textContent獲取內容
	if(typeof element.innerText ==='string') {
		return element.innerText;
} else { return element.textContent } }