我一直在試圖編寫一個函數,它可以取值並將其添加到元素類。類似這樣的:如何通過addClass()函數動態更改類?
var changeClass = function(newClass){
$("div").removeClass().addClass(newClass);
};
changeClass(red);
任何幫助將非常感激!
我一直在試圖編寫一個函數,它可以取值並將其添加到元素類。類似這樣的:如何通過addClass()函數動態更改類?
var changeClass = function(newClass){
$("div").removeClass().addClass(newClass);
};
changeClass(red);
任何幫助將非常感激!
你可以像下面: -
var changeClass = function(newClass){
$("div").removeClass().addClass(newClass); // single line to remove class+add new class
};
$(document).ready(function(){
changeClass("red"); // call function with string value
});
.green{
background:green;
color:white;
}
.red{
background:red;
color:white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="green">div1</div><br>
<div class="green">div2</div><br>
<div class="green">div3</div><br>
<div class="green">div4</div><br>
<div class="green">div5</div><br>
假設你試圖替換所有div
的所有類......你幾乎已經擁有它了。
var changeClass = function(newClass){
$("div").removeClass()
$("div").addClass(newClass);
};
var red = "red" // I'm guessing this is what you want?
changeClass(red);
其實,如果OP有多個'div',那麼代碼仍然可以工作。結果將會是頁面中的所有'div'都會將它們的類替換爲'red',這可能(或可能不會)預期。 –
你說得對,我已經改變了我的答案。謝謝。 –
有什麼方法可以使函數中的值成爲字符串? – Supergogoman91
您使用'red',如果它是一個變量。你不是指'changeClass(「紅色」)嗎? –
除非您打算訪問CSS'sheets'集合並動態創建新樣式,否則這是不可能的。相反,預先製作課程並根據需要添加/刪除它們。如果您確實需要動態調整,請直接對CSS進行更改,而不是類。 –