我想永久修改css規則(以便新元素將採用此css規則)。看來,用css不堅持(說改變了未來元素的背景色被創建時就不會繼續下去)所有jQuery的修改:動態創建元素的持久css規則更改
$(".red").css("background-color", "blue");
見我的小提琴這裏:
https://jsfiddle.net/Lvm0c7m6/
我希望所有將來的元素現在都有由css創建的新規則,是否有辦法做到這一點(具有良好的跨瀏覽器支持)。
我想永久修改css規則(以便新元素將採用此css規則)。看來,用css不堅持(說改變了未來元素的背景色被創建時就不會繼續下去)所有jQuery的修改:動態創建元素的持久css規則更改
$(".red").css("background-color", "blue");
見我的小提琴這裏:
https://jsfiddle.net/Lvm0c7m6/
我希望所有將來的元素現在都有由css創建的新規則,是否有辦法做到這一點(具有良好的跨瀏覽器支持)。
您可以在執行時命令javascript將內聯樣式添加到類'紅'的所有元素,並將它們着色爲藍色。之後,您將新元素添加到DOM。他們不知道早先的命令,因此不受他們的影響。
這樣可以解決您的問題,因爲這會將樣式規則添加到文檔中。這會影響所有的元素,是「老大難」:
$("<style>.red { background: blue; }</style>").appendTo("body");
參見:https://jsfiddle.net/aLghL2ke/
注意,如果你要多次運行此命令,它會很高興從您的代碼中刪除舊的樣式塊。這可以用jQuery也使用這個命令來完成:
$("body style").remove();
當你說「永久」,因爲它在時間的現實世界確實不攜帶相同的重量。大多數JavaScript都是事件驅動的,幾乎所有的事情都在一個函數的時間範圍內。或會話。當瀏覽器更改爲另一個頁面,目錄,網站等時,來自以前位置的大部分或全部JavaScript都會被垃圾收集。對樣式表,樣式塊或樣式屬性直接或間接進行的任何更改都是臨時性的。使用編輯器對文檔所做的更改是永久性的。 – zer00ne