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

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

從字符串數組應用多個 CSS 規則?

從字符串數組應用多個 CSS 規則?

ITMISS 2022-01-20 17:10:55
我目前為我的 jQuery 請求設置了以下設置,這意味著在頁面上查找 ID 為“myid”的元素并對其應用新的 CSS 規則。這些規則事先不知道,所以我首先讀取一個文件并將結果存儲在一個字符串數組中,偶數索引是規則,奇數索引是值。然而,jQuery 拒絕讓這個工作。我翻遍了文檔無濟于事,我得到的只是顯然 words[0] 是 string[] 類型,而不是 string(不應該是這種情況)。我能得到一些建議嗎?這是我的意思的一個例子:var words = ["color", "blue", "font-size", "100"]; // these have been parsed from a file and formatted$("#myid").css({words[0] : words [1], words[2], words[3]}); // This won't apply
查看完整描述

3 回答

?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

我認為這段代碼會對你有所幫助。我僅在此頁面上對其進行了測試。:)



var words = ["color", "blue", "font-size", "100"];


for (var i = 0; i < words.length; i += 2){

  $("#mainbar").css(words[i], words[i+1]);

}


此循環將幫助您添加任意數量的規則,因為您正在動態讀取它們。


查看完整回答
反對 回復 2022-01-20
?
慕勒3428872

TA貢獻1848條經驗 獲得超6個贊

一種方法是首先構建 css 對象并將其傳遞給 jQuery 函數:


let words = ["color", "blue", "font-size", "100"]; // these have been parsed from a file and formatted


const cssObj = {};

words.forEach((el,idx,arr) => {

   if(!(idx % 2) && (idx + 2 <= arr.length) ){

     cssObj[el] = arr[idx + 1] 

   }

});


$("#myid").css(cssObj); // This won't apply

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="myid">MyId Div</div>


查看完整回答
反對 回復 2022-01-20
?
呼啦一陣風

TA貢獻1802條經驗 獲得超6個贊

這是一種將 CSS 組合到一個對象中以一次性應用它的方法:


const words = ["color", "blue", "font-size", "100px"];



let cssObj = {};


for (var i = 0; i < words.length; i++){

    cssObj = { ...cssObj, [words[i]]: words[i+1] }

}


$("#mainbar").css(cssObj);


查看完整回答
反對 回復 2022-01-20
  • 3 回答
  • 0 關注
  • 182 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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