国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

如何判斷出一個(gè)js對象是否一個(gè)dom對象

2019-11-19 18:50:33
字體:
供稿:網(wǎng)友

我們在寫js代碼時(shí)有時(shí)需要判斷某個(gè)對象是不是DOM對象,然后再進(jìn)行后續(xù)的操作,這里我給出一種兼容各大瀏覽器,同時(shí)又算是比較穩(wěn)妥的一種方法。

要判斷一個(gè)對象是否DOM對象,首先想到的無非就是它是否具有DOM對象的各種屬性或特征,比如是否有nodeType屬性,有tagName屬性,等等。判斷的特征越多,也就越可靠,因?yàn)楫吘刮覀冏远x的js對象也可以有那些屬性。還有其他方法嗎?

在DOM Level2標(biāo)準(zhǔn)中定義了一個(gè)HTMLElement對象,它規(guī)定所有的DOM對象都是HTMLElement的實(shí)例,所以我們可以利用這點(diǎn)來判斷一個(gè)對象是不是DOM對象:如果該對象是HTMLElement的實(shí)例,則它肯定是一個(gè)DOM對象。在不支持HTMLElement的瀏覽器中我們則還是使用特征檢測法。

<script type="text/javascript">  //首先要對HTMLElement進(jìn)行類型檢查,因?yàn)榧词乖谥С諬TMLElement  //的瀏覽器中,類型卻是有差別的,在Chrome,Opera中HTMLElement的  //類型為function,此時(shí)就不能用它來判斷了  var isDOM = ( typeof HTMLElement === 'object' ) ?        function(obj){          return obj instanceof HTMLElement;        } :        function(obj){          return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string';        }  </script>

以上就是小編為大家?guī)淼娜绾闻袛喑鲆粋€(gè)js對象是否一個(gè)dom對象全部內(nèi)容了,希望大家多多支持武林網(wǎng)~

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 孝感市| 淮滨县| 涪陵区| 怀化市| 淮滨县| 芦溪县| 阿勒泰市| 克东县| 翁牛特旗| 平南县| 平利县| 阿拉善盟| 新平| 达日县| 政和县| 孝昌县| 武穴市| 武邑县| 吴桥县| 翼城县| 汶上县| 沛县| 石渠县| 兴仁县| 上饶市| 马公市| 曲阜市| 霍林郭勒市| 招远市| 襄城县| 壤塘县| 阿尔山市| 萝北县| 裕民县| 徐水县| 扎鲁特旗| 海口市| 沾益县| 深水埗区| 南安市| 延长县|