色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

JavaScript:輸入指定類型的選擇器(僅需支持id,class,tagName三種簡單CSS選擇器)

瀏覽:98日期:2023-05-14 17:15:50

問題描述

1.編寫一個JavaScript函數,輸入指定類型的選擇器(僅需支持id,class,tagName三種簡單CSS選擇器,無需兼容組合選擇器)

問題是:下面的正則匹配看不懂,var reg = /^(#)?(.)?(w+)$/img;var regResult = reg.exec(selector);,具體如下

var query = function(selector) {var reg = /^(#)?(.)?(w+)$/img;var regResult = reg.exec(selector);var result = [];//如果是id選擇器if(regResult[1]) { ...}//如果是class選擇器else if(regResult[2]) { ... }//如果是標簽選擇器else if(regResult[3]) { ... }}

問題解答

回答1:

/^(#)?(.)?(w+)$/img拆一下 //之間的是正則的內容 后面img是正則的匹配方式i:ignorCase忽略大小寫m:mutiple允許多行匹配g:globle進行全局匹配,指匹配到目標串的結尾

正則內容:^(#)?(.)?(w+)$ ^代表以xxx開頭 $代表以xxxx結尾(#)?可以帶一個或者不帶#(.)? 可以帶.或者沒有.(w+) 匹配一個或多個單詞

回答2:

/^(#)?(.)?(w+)$/img

(#)? 匹配ID的

(.)? 匹配className

(w+) 剩下都是標簽名或者[1,2]中具體的ID或者className名稱

回答3:

謝遙。

請參考 @trionfo1993

回答4:

給你一個,我寫的utils中的dom片段

class dom extends base{ constructor(){super(); } // 根據ID獲取指定DOM byId(_id){return document.getElementById(string.replace(_id,’#’,’’)); } // 根據ID或Class獲取DOM get(_id){if(_id.indexOf(’.’) > -1){ let list = document.getElementsByClassName(string.replace(_id,’.’,’’)); this._object = Array.from(list);}else{ this._object = [this.byId(_id)];}return this; } // 根據Name獲取相關DOM byName(_name){let list = document.getElementsByName(_name);if(list.length > 0) return Array.from(list);return null; } // 返回dom原型 get valueOf(){if(this._object.length >1){ return this._object; }return this._object[0]; } // 基礎DOM操作方法 _dom_ctrols(_func){for(let info of this._object){ _func(info);}return this; } // 增加class addClass(_name){this._dom_ctrols((info)=>{ if(info.className.indexOf(_name) == -1){info.className += ’ ’ + _name; }})return this; } // 刪除class removeClass(_name){this._dom_ctrols((info)=>{ info.className = string.replace(info.className,_name,’’);})return this; } // 顯示?隱藏DOM主方法 _hide_show(_value){this._dom_ctrols((info)=>{ info.style.display = _value;}); } // 隱藏DOM hide(){this._hide_show(’none’); } // 顯示DOM show(){this._hide_show(’block’); }

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 亚洲视屏在线 | 欧美精品免费线视频观看视频 | 99久久综合精品国产 | 国产男女免费视频 | 131的美女午夜爱爱爽爽视频 | 日本免费的一级绿象 | 亚洲精品一区二三区在线观看 | 男操女视频 | 99久久综合 | 亚洲综合久久久久久中文字幕 | 日本免费毛片在线高清看 | 久久青草热 | 午夜一级毛片免费视频 | 成 人免费va视频 | 老色99久久九九精品尤物 | 国产亚洲一区二区手机在线观看 | 成年免费大片黄在线观看一 | 二区久久国产乱子伦免费精品 | 91精品成人免费国产 | 亚洲欧美日韩一区 | 亚洲国产系列久久精品99人人 | 男女福利社 | 欧美日韩精品一区二区免费看 | 久久亚洲人成国产精品 | 怡红院日本一道日本久久 | 国产一级内谢a级高清毛片 国产一级片毛片 | 国产精品99r8免费视频2022 | 国产色视频在线观看免费 | 国产美女自拍视频 | 欧美另类高清xxxxx | 日韩免费在线 | 久久伊人免费视频 | 国产久视频 | 亚洲 欧美 都市 自拍 在线 | 久久精品国产大片免费观看 | a毛片在线看片免费 | 欧美精品亚洲精品日韩专区 | 欧美一级网址 | 亚洲视频手机在线 | 国产成人精品福利网站在线观看 | 成年人在线视频免费观看 |