2 回答

TA貢獻2036條經驗 獲得超8個贊
您不需要替換,只需將字符串類分配給屬性即可className
:
Element 接口的property
className
獲取和設置指定元素的類屬性的值。
句法:
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>

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");
- 2 回答
- 0 關注
- 205 瀏覽
添加回答
舉報