js怎麼選擇class,js類選擇

本文目錄一覽:

如何用javascript為元素添加class?

以給 body 標籤添加 class 為例

通過 jQuery

$( ‘body’).addClass( ‘class1 class2’ );

$( ‘body’ ).removeClass( ‘class1 class2’ );

支持 classList 的高級瀏覽器(IE10+,Chrome,Firefox,Safari)

document.body.classList.add( ‘class1’, ‘class2’ );

document.body.classList.remove( ‘class1’, ‘class2’ );

不支持 classList 的瀏覽器只能通過 className 來添加

document.body.className += ‘ cl

[1]直接把樣式賦值給className

var odiv=document.getElementById(‘div1’);

odiv.className= div3

//這樣我們會得到 class =”div3″ 會直接把div2樣式給覆蓋掉;

[2]使用累加賦值給className

var odiv=document.getElementById(‘div1’);

odiv.className+=” “+div3  //樣式和樣式之間需要空隙 ,所以加個空字符串隔開

//這樣可以得到 class=”div2 div3″ 可以正常增加,但是我們在添加樣式的時候我們得考慮下他本身之前有沒有同名的樣式,如果有我們添加的話就會變成累贅 比如class=”div2 div3 div3″;

[3]檢測樣式原先之前是否有相同的樣式

var odiv=document.getElementById(‘div1’); 

function hasClass(element,csName){

element.className.match(RegExp(‘(\\s|^)’+csName+'(\\s|$)’)); //使用正則檢測是否有相同的樣式

}

[4]在[3]的基礎上我們就可以進行判斷性給元素添加樣式了 

var odiv=document.getElementById(‘div1’); 

function hasClass(element,csName){

return  element.className.match(RegExp(‘(\\s|^)’+csName+'(\\s|$)’)); //使用正則檢測是否有相同的樣式

} 

function addClass(element,csName){

if(!hasClass(element,csName)){

element.className+=’ ‘+csName;

js怎麼獲取元素的class名

js獲取元素的class名:

var className=document.getElementsByClassName(‘names’)[0];

jquery獲取元素的class名:

var className = $(‘.names’).atrr(‘class’);

相關概念

getElementsByClassName() 方法返迴文檔中所有指定類名的元素集合,作為 NodeList 對象。

NodeList 對象代表一個有順序的節點列表。NodeList 對象 我們可通過節點列表中的節點索引號來訪問列表中的節點(索引號由0開始)。

如何用js點擊class?

HTML DOM3提供了getElementsByClassName()方法用以根據類名獲取元素,但是IE9以下瀏覽器並不支持。考慮兼容性,可以採用如下思路:獲取元素,判斷className屬性是否為目標類名,是的話即添加onclick事件。

下面實例演示——點擊class為test1的a標籤彈出提示框:

1、HTML結構

div

a class=”test1″ href=”#”第一項/a

a class=”test2″ href=”#”第二項/a

/div

2、javascript代碼

window.onload = function(){

var a = document.getElementsByTagName(“a”);

for(i=0;ia.length;i++){

if(a[i].className == “test1”){

a[i].onclick = function(){alert(this.innerHTML+”被點擊了”)}

}

}

}

3、效果演示

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/275995.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-17 19:38
下一篇 2024-12-17 19:38

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • Idea新建文件夾沒有java class的解決方法

    如果你在Idea中新建了一個文件夾,卻沒有Java Class,應該如何解決呢?下面從多個方面來進行解答。 一、檢查Idea設置 首先,我們應該檢查Idea的設置是否正確。打開Id…

    編程 2025-04-29
  • Python Class括號中的參數用法介紹

    本文將對Python中類的括號中的參數進行詳細解析,以幫助初學者熟悉和掌握類的創建以及參數設置。 一、Class的基本定義 在Python中,通過使用關鍵字class來定義類。類包…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿着SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿着SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27
  • 如何反混淆美團slider.js

    本文將從多個方面詳細闡述如何反混淆美團slider.js。在開始之前,需要明確的是,混淆是一種保護JavaScript代碼的方法,其目的是使代碼難以理解和修改。因此,在進行反混淆操…

    編程 2025-04-27
  • Python要學JS嗎?

    Python和JavaScript都是非常受歡迎的編程語言。然而,你可能會問,既然我已經學了Python,是不是也需要學一下JS呢?在本文中,我們將圍繞這個問題進行討論,並從多個角…

    編程 2025-04-27

發表回復

登錄後才能評論