2017-08-24 32 views
0

我加載一個網站,使用jQuery腳本獲取頁面加載時的標題的背景顏色(暗示$(document).ready(function(global)),並且想要將此值輸入到背景樣式屬性的一個表。更改<style>後jQuery腳本

該表的屬性當前使用<style>/</style>標籤定義,並在腳本可以獲得所需值之前運行。因此,存儲的顏色變量不能輸入到<style>變量中,因爲<script><style>變量運行後運行。

問題是如何在<script>運行之後獲得運行<style>標記的一部分代碼,以便我可以將存儲的變量輸入到標記中。

這似乎有點落後,我知道,但我正在處理的應用程序有非常嚴格的參數,顏色變量必須在加載後定義。後端對顏色的編碼是不可能的,因爲它們存儲在臨時緩存文件中,所以我受限於我描述的情況。

回答

0

您不使用jQuery來更改樣式表,您使用它與樣式表相同的方式與DOM進行交互。

您可以使用.style property對樣式進行更改。

下面的示例顯示更改背景.backgroundColor

var headerColour = document.getElementById('header').style.backgroundColor; 
 
var element = document.getElementById('element'); 
 
element.style.backgroundColor = headerColour;
#element { 
 
    height: 100px; 
 
    width: 100px; 
 
    background: red; 
 
}
<div id="header" style="background-color: green"></div> 
 
<div id="element"></div>

注意,CSS說,廣場應該是紅色的,但JavaScript的說,方應爲綠色。結果變成綠色。在通過CSS應用樣式之後,通過JavaScript完成樣式將自動應用(如上所示)。

希望這會有所幫助! :)

+0

我不改變風格的jquery,我用jquery定義一個全局屬性,因爲我需要獲取標題顏色。然後我需要使用該全局變量來定義表格的背景顏色,並且我需要在加載頁面之前完成此操作,以便在腳本運行時顏色不閃爍。 –

+0

你做了一件非常相似的事情;您將標題的顏色存儲爲變量,並使用'.style'將表顏色的值設置爲該變量。我已經更新了我的答案,以展示這一點。 –

+0

好吧我想出瞭如何使用.style現在的問題是讓jquery腳本在顯示頁面之前運行,因爲表格顯示爲白色,然後非常快速地改變顏色,但仍然看起來不專業。這不能在html 標籤中完成,因爲我無法訪問正文標籤 –