我正在處理4個非常相似的圖像/圖標。當用戶點擊其中一個圖像時,它會變得飽和並突出顯示,直到點擊另一個圖像(然後該圖像將飽和並突出顯示),它一切正常,但是因爲我在其他地方發現了這個小片段,並且因爲我在我的考試項目中使用它,我需要能夠解釋代碼。我很難掌握className屬性,而我也發現它有點奇怪,在本例中它被設置爲空字符串(「」)。使用className和空字符串(「」)。
的HTML:
<div id="slideshow">
<ul>
<li><img id="one" onclick="saturate(this); display(this);" src="../images/efficiency.png" alt="efficiency"/></li>
<li><img id="two" onclick="saturate(this); display(this);" src="../images/educated_team.png"></li>
<li><img id="three" onclick="saturate(this); display(this);" src="../images/profitable_options.png"></li>
<li><img id="four" onclick="saturate(this); display(this);" src="../images/strategic_solutions.png"></li>
</ul>
而且JS:
var current = document.getElementById('one');
function saturate(now) {
if (current != null) {
current.className = "";
}
now.className = "saturate";
current = now;
}
任何人都可以在簡單的話,解釋這是如何工作的?這是如何使單個圖像一次飽和成爲可能(就像點擊時突出顯示的菜單項一樣)? 此外,now.className = "saturate";
是做什麼的?我的意思是,在這種情況下,「飽和」這個詞是我自己的功能嗎?最初,四個圖像之一有一個class="saturate"
,我隨機嘗試刪除,整個事情仍然有效,所以我認爲上述飽和的詞可能與此有關。 (我也在我的CSS中設置.saturate,這是獲得80%額外飽和度的地方)。如何從<li><img id="one"
刪除class="saturate"
後,這種效果仍然有效..我真的不明白。
可能有一些CSS讓這些圖像在具有該類名稱時顯得飽和 –