1
我真的不明白爲什麼這段代碼將無法正常工作:mootools的類名未定義
$$('.nav_contact').addEvent('click', function(){
if (this.getStyle('color') != '#ffc000') {
this.tween('color','#ffc000');
alert(this.className);
$$('.navigation').getElements('a').each(function(a) {
alert(a.className);
if (a.className != 'nav_contact') {
a.tween('color','#b2b1af');
}
});
}
});
這裏是相關的HTML:
<nav class="navigation">
<ul>
<li><a class="nav_foo">Portfolio</a></li>
<li><a class="nav_bar">Services</a></li>
<li><a class="nav_contact">Contact</a></li>
</ul>
</nav>
據說這是爲了凸顯點擊按鈕並以某種方式隱藏其他人。問題是我無法在輸入每個元素時立即獲取元素className。該警報給我「未定義」。 有人嗎?
thx爲您的答案Dimitar。它的工作原理,我也會更新我的代碼的其餘部分。 –
哦,我想問你爲什麼你改變原來的'$$('。nav_contact')''document.getElements(「a.nav_contact」)' –
我不喜歡$$ :)在過去的日子它是'this.document.getElements()'的別名,它可能在不同的執行上下文中行爲不當。代碼應該更具有口頭性和自我解釋性,所以如果有人進來看看它沒有mootools的經驗,他們不需要知道$$做什麼並且可以理解代碼。 –