我使用的常用技術,從我的JavaScript/jQuery的內創造<STYLE>
秒 - 喜歡這個拆卸/更換動態創建<STYLE>標籤(使用jQuery)
$('<style>.tilewidth { width:' + tilesize + 'px; height: ' + tilesize + 'px;}</style>').appendTo('head');
我這樣做是爲了控制如何某些對象縮放(例如,強制DIV
爲正方形) - 並且它工作正常。
問題是我重新運行該代碼,如果這個窗口將重新大小 - 此時它在現有的後插入一組新的<STYLE>
標籤(如果有人拖拉伸/縮小窗口它可以插入100S !!)
這工作,我要強調,因爲CSS只讀取最後一個項目 - 但似乎笨拙和骯髒和雜亂無規律可循且可怕的(它使幾乎不可能螢火蟲讀碼!!)
問題是 - 可以在插入新標籤之前,我刪除了舊標籤 - 或者我應該只是強制重新裝入一個完整的頁面(如果是這樣,怎麼樣 - 也不會是性能消耗)?
更新:根據羅賓的答案,我創建了一個功能,像這樣
function addStyle(sname,scode) {
scode = "." + sname + " {" + scode + "}";
if ($("#style-" + sname).length)
$("#style-" + sname).html(scode);
else
$("<style/>").attr("id","style-"+sname).html(scode).appendTo("head");
}
這工作得很好 - 謝謝! :)
不錯的主意 - 我將它改編成了一個簡單生活的函數(請參閱編輯問題) – shrewdlogarithm 2012-08-12 12:00:36