亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何替換普通 JS 上的 className?

如何替換普通 JS 上的 className?

桃花長相依 2023-08-29 18:04:58
如何將類名(列表)替換為 Javascript?我有這個代碼:document.addEventListener("DOMContentLoaded", (e) => {    const url = window.location;    let urlReq = url.href;    if(urlReq.includes('/home')){        document.getElementById('default-sidenav-menu').className.replace('sidenav-main nav-expanded nav-lock nav-collapsible  sidenav-active-rounded  sidenav-dark', 'sidenav-main nav-collapsed nav-collapsible  sidenav-active-rounded  sidenav-dark');        console.log(document.getElementById('default-sidenav-menu').className);    }});這是我的html:<aside class="sidenav-main nav-expanded nav-lock nav-collapsible  sidenav-active-rounded  sidenav-dark" id="default-sidenav-menu">    <div class="brand-sidebar">    ...</aside>但我仍然得到默認的 className:sidenav-main nav-expanded nav-lock nav-collapsible  sidenav-active-rounded  sidenav-dark當我的頁面加載時。我犯了什么錯誤?
查看完整描述

2 回答

?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

您不需要替換,只需將字符串類分配給屬性即可className

Element 接口的propertyclassName獲取和設置指定元素的類屬性的值。

句法:

elementNodeReference.className?=?cName;

在哪里:

cName是一個字符串變量,表示當前元素的類或空格分隔的類。

演示:

document.addEventListener("DOMContentLoaded", (e) => {

? // other code

? document.getElementById('default-sidenav-menu').className = 'sidenav-main nav-expanded nav-lock nav-collapsible? sidenav-active-rounded? sidenav-dark', 'sidenav-main nav-collapsed nav-collapsible? sidenav-active-rounded? sidenav-dark';

? console.log(document.getElementById('default-sidenav-menu').className);

? // other code

});

<aside class="nav-lock nav-collapsible" id="default-sidenav-menu">

? ? <div class="brand-sidebar">

? ? </div>

</aside>


查看完整回答
反對 回復 2023-08-29
?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

document.getElementById('default-sidenav-menu').className.replace

這意味著您要用另一個字符串替換該字符串,因為“className”在您獲取時只是一個字符串。


document.body.className.constructor.name

=> "String"

如果你想替換它,那么你應該像這樣分配新的類名。


document.getElementById('default-sidenav-menu').className = 

 document.getElementById('default-sidenav-menu').className.replace("something", "something_new");



查看完整回答
反對 回復 2023-08-29
  • 2 回答
  • 0 關注
  • 205 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號