我正在製作一個博客主題,它在作者發佈帖子時使用了精選圖像和特色的混合。我想讓腳本運行三件事:檢查背景顏色或圖像
- 檢查是否有精選圖片。如果是這樣,請使用它。
- 如果沒有特色圖片,是否有特色?如果是這樣,請使用它。
- 如果兩者均未設置,則生成隨機顏色。
我有JavaScript代碼在幾乎作品的片斷,我覺得有可能是我使用的if
語句中的邏輯問題。
腳本
$(".post").each(function randomColor() {
var bgCol = $(".post").css('backgroundColor');
if (bgCol != "rgb(0,0,0)" || (bgCol.attr('style').indexOf('image') !== -1)) {
var color = "#"+(Math.random()*0xFFFFFF<<0).toString(16);
$(this).css("background-color", color)
}
else { return }
});
我成立了一個jsFiddle to demonstrate the problem。它保留圖像,但如果設置了則覆蓋特色。
有關如何改進if
循環的任何想法?
我有一個演示(非常稀疏)的blog theme,所以你可以看到我要去的東西。
'none'應該是什麼? JavaScript中沒有這樣的關鍵字/本地值。你的意思是字符串文字'「無」'? – 2014-09-01 01:47:42
CSS中的background-image的默認值(我以爲我正在檢查...)是'none'。 – Brian 2014-09-01 01:52:17
是的,但它是字符串值,而不是關鍵字。 '無!=「無」'。 – 2014-09-01 01:54:11