搜尋
首頁web前端js教程常見的原始JS選擇器使用方法總結_javascript技巧

常見的getElementById,getElementsByName,getElementsByTagName。但外國人不滿意這些API,於是搞出了getElementsByClassName,後來一點點又出現了jQuery選擇器,這裡只說原始js選擇。

1.getElementById

這是最常用的選擇器,透過id來定位:

例:

var test=document.getElementById(" test").value;//取得文件中id為test的元素的值,並賦值給test變臉

2.getElementsByName

例:

var test= document.getElementByName("test");//取得文件中name為test的元素的節點,並賦值給test變量,此時test變數是數組

3.getElementsByTagName

例:

var test=document.getElementsByTagName("test");//取得文件中class為test的元素的節點,並賦值為test,此時test變數是數組,這個選擇器在IE5,6,7,8中無法使用

4.getElementsByClassName

這個選擇器在js的API中是找不到的,想要使用必須自己定義方法,通常的原理為先使用getElementsByTagName("*")取出文件中所有元素,然後進行遍歷,使用正規表示式找出符合的元素放入陣列返回。網路上有很多程式設計師實現了這個選擇器,下面舉兩例:

(1)The Ultimate getElementsByClassName方案,作者為Robert Nyman,05年實現,可見老外許多東西在很早以前就走得很遠了。

複製程式碼 程式碼如下:

//三個參數都是必要的,找出一>

//三參數網頁中5007個類名為「cell」的元素,IE8歷時1828 ~ 1844毫秒,
//IE6為4610 ~ 6109毫秒,FF3.5為46 ~ 48毫秒,opera10為31 ~ 3225,Chrome為毫秒23~ 26毫秒,
//safari4為19 ~ 20毫秒
function getElementsByClassName(oElm, strTagName, strClassName){
var arrElements = (strTagName == "*" & oElm. all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/-/g, "\-");
var oRegExp = new RegExp("(^|\s)" strClassName "(\s|$)");
var oElement;
for(var i=0; i oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}

(2)由Dustin Diaz(《JavaScript Design Patterns》的作者)提供,但相容性不如上面的,不支援IE5。 複製程式碼
程式碼如下:


/網頁後兩參數中5007個類名為「cell」的元素,IE8歷時78毫秒,IE6歷時125~171毫秒
//FF3.5為42 ~ 48毫秒,opera10為31 毫秒,Chrome為22~ 25毫秒,safari4為18 ~ 19毫秒
var getElementsByClass = function(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document; >if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp(" (^|\s)" searchClass "(\s|$)");
for (i = 0, j = 0; i if ( pattern.test(els[i ].className) ) {
classElements[j] = els[i];
j ;
}
}
return classElements;
}


------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ---

註:this可以表示目前元素的節點。

-------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------

以下是配合事件等知識點的一些常用的使用方法: 程式碼如下:

//提交id為test的表單

document.getElementById("test").submit();

//將id為test元素的邊框設為2個像素,實體,紅色

document.getElementById("test").style.border="2px solid red";

//滑鼠移動或移出id為test的元素,改變其背景色

function test(){
document.getElementById("test").onmouseover=function(){document.getElementById("test2").style.backgroundColor="red"} ;
document.getElementById("test").onmouseout=function(){document.getElementById("test2").style.backgroundColor="blue"};
}

///彈出文件中name為test的元素的個數

function test()
  {
  var test=document.getElementsByName("test");
  alerttest. 🎜>  }

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
css中id选择符的标识是什么css中id选择符的标识是什么Sep 22, 2022 pm 03:57 PM

在css中,id选择符的标识是“#”,可以为标有特定id属性值的HTML元素指定特定的样式,语法结构“#ID值 {属性 : 属性值;}”。ID属性在整个页面中是唯一不可重复的;ID属性值不要以数字开头,数字开头的ID在Mozilla/Firefox浏览器中不起作用。

使用:nth-child(n+3)伪类选择器选择位置大于等于3的子元素的样式使用:nth-child(n+3)伪类选择器选择位置大于等于3的子元素的样式Nov 20, 2023 am 11:20 AM

使用:nth-child(n+3)伪类选择器选择位置大于等于3的子元素的样式,具体代码示例如下:HTML代码:<divid="container"><divclass="item">第一个子元素</div><divclass="item"&

css伪选择器学习之伪类选择器解析css伪选择器学习之伪类选择器解析Aug 03, 2022 am 11:26 AM

在之前的文章《css伪选择器学习之伪元素选择器解析​》中,我们学习了伪元素选择器,而今天我们详细了解一下伪类选择器,希望对大家有所帮助!

javascript选择器失效怎么办javascript选择器失效怎么办Feb 10, 2023 am 10:15 AM

javascript选择器失效是因为代码不规范导致的,其解决办法:1、把引入的JS代码去掉,ID选择器方法即可有效;2、在引入“jquery.js”之前引入指定JS代码即可。

从入门到精通:掌握is与where选择器的使用技巧从入门到精通:掌握is与where选择器的使用技巧Sep 08, 2023 am 09:15 AM

从入门到精通:掌握is与where选择器的使用技巧引言:在进行数据处理和分析的过程中,选择器(selector)是一项非常重要的工具。通过选择器,我们可以按照特定的条件从数据集中提取所需的数据。本文将介绍is和where选择器的使用技巧,帮助读者快速掌握这两个选择器的强大功能。一、is选择器的使用is选择器是一种基本的选择器,它允许我们根据给定条件对数据集进

css中的选择器包括超文本标记选择器吗css中的选择器包括超文本标记选择器吗Sep 01, 2022 pm 05:25 PM

不包括。css选择器有:1、标签选择器,是通过HTML页面的元素名定位具体HTML元素;2、类选择器,是通过HTML元素的class属性的值定位具体HTML元素;3、ID选择器,是通过HTML元素的id属性的值定位具体HTML元素;4、通配符选择器“*”,可以指代所有类型的标签元素,包括自定义元素;5、属性选择器,是通过HTML元素已经存在属性名或属性值来定位具体HTML元素。

深度解析is与where选择器:提升CSS编程水平深度解析is与where选择器:提升CSS编程水平Sep 08, 2023 pm 08:22 PM

深度解析is与where选择器:提升CSS编程水平引言:在CSS编程过程中,选择器是必不可少的元素。它们允许我们根据特定的条件选择HTML文档中的元素并对其进行样式化。在这篇文章中,我们将深入探讨两个常用的选择器,即:is选择器和where选择器。通过了解它们的工作原理和使用场景,我们可以大大提升CSS编程的水平。一、is选择器is选择器是一个非常强大的选择

wxss选择器有哪些wxss选择器有哪些Sep 28, 2023 pm 04:27 PM

wxss选择器有元素选择器、类选择器、ID选择器、伪类选择器、子元素选择器、属性选择器、后代选择器和通配选择器等。详细介绍:1、元素选择器,使用元素名称作为选择器,选取匹配的元素,使用“view”选择器可以选取所有的“view”组件;2、类选择器,使用类名作为选择器,选取具有特定类名的元素,使用“.classname”选择器可以选取具有“.classname”类名的元素等等。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
2 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)