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

首頁 > 語言 > JavaScript > 正文

如何用js判斷dom是否有存在某class的值

2024-05-06 15:11:45
字體:
來源:轉載
供稿:網友

例如:

<html class="no-js"><head></head><body></body></html>

判斷html節點的class是否有no-js。

1.jquery的實現方式

$("html").hasClass('no-js');

jquery源碼的實現方式:

var rclass = /[/t/r/n/f]/g;jQuery.fn.extend({ hasClass: function(selector) {  var className = " " + selector + " ",   i = 0,   l = this.length;  for (; i < l; i++) {   if (this[i].nodeType === 1 &&    (" " + this[i].className + " ").replace(rclass, " ").indexOf(className) > -1) {    return true;   }  }  return false; }})

2.js的實現方式

function hasClass(element, cls) { return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1;}hasClass(document.querySelector("html"), 'no-js');

3.H5的classList

說明下:

    字符串的indexOf方法是無法區分.no-js和.no-js-indeed這樣的類; 類名的分隔符可能不是空格,還有可能是/t等。

代碼:

var hasClass = (function(){ var div = document.createElement("div") ; if( "classList" in div && typeof div.classList.contains === "function" ) {  return function(elem, className){   return elem.classList.contains(className) ;  } ; } else {  return function(elem, className){   var classes = elem.className.split(//s+/) ;   for(var i= 0 ; i < classes.length ; i ++) {    if( classes[i] === className ) {     return true ;    }   }   return false ;  } ; }})() ;alert( hasClass(document.documentElement, "no-js") ) ;

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持錯新站長站!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 米易县| 平凉市| 平罗县| 石首市| 霸州市| 金坛市| 无为县| 漳州市| 大石桥市| 松桃| 洪湖市| 崇左市| 喀什市| 伊宁市| 油尖旺区| 武强县| 景东| 蒙自县| 揭东县| 沈丘县| 无锡市| 东城区| 台江县| 宜阳县| 尼玛县| 凤凰县| 芜湖县| 板桥市| 塔城市| 雷山县| 渝中区| 台江县| 汝南县| 乌拉特后旗| 纳雍县| 常山县| 宝兴县| 蛟河市| 兴宁市| 洛川县| 视频|