![](/img/trans.png)
[英]JavaScript: Advantages and disadvantages of dynamically (on fly) creating style element
[英]jQuery Creating a style element on fly
我想在頁面加載后創建樣式元素(例如,頁面加載后約2-3秒)
html
<html>
<body>
<div id="div1" >
<div id= "div2" > some text goes here </div>
</div>
</body>
</html>
javascript
$(function () {
var style = $('<style type="text/css" />').appendTo('head');
style.html('body{ background:#000; }
\n
\#div1{ background:#0099f9; }'
//I'm having some more elements which I need to alter their style attr's
);
var attr = style.html;
style.html(attr + '\n\#div2{ background:#f0f; }');
});
我也有一堆html元素(除了提到的其他元素),在頁面加載后我需要更改其樣式
當我嘗試讀取代碼時,我會感到困難,因為它是硬編碼的,
當我需要在上述樣式標簽中添加一些元素時,我也遇到了問題
是他們這樣做的簡單方法,並且易於閱讀
感謝幫助 !!
祝你有美好的一天
我不知道這是否對您有幫助,而是動態地嘗試編寫CSS,難道您不能創建不同的樣式並在渲染它們時為它們提供正確的CSS類嗎?
像這樣:
div.even
{
background-color:#f00;
}
div.odd
{
background-color:#ff0;
}
然后,您可以在呈現頁面時確定正確的CSS類服務器端(使用PHP,ASP.Net等)。
我建議研究一下客戶端模板系統,例如此處討論的機制: http : //blog.reybango.com/2010/07/09/not-using-jquery-javascript-templates-youre-really-missing-out /
這種方法將使您的CSS片段與代碼分開,這將使代碼整潔得多。 您將CSS放入故意制作了“類型”的<script>
塊中,以使瀏覽器不會嘗試執行它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.