2009-10-20 70 views
0

我正在尋找如何在Internet Explorer 6中的輸入框上懸停效果?我使用YUI,如果我可以利用它。如何在Internet Explorer 6中的輸入框上懸停效果

感謝

+1

你嘗試過什麼迄今所採取?你得到了哪個問題?你是否在例如IE7?告訴我們一些代碼... – msparer 2009-10-20 13:52:25

+0

不是'...'煩人嗎? 無論如何更新其他人我實施了powtac的解決方案,並將其與YAHOO.util.Selector.query結合以獲得特定的類。但是我撞到了另一堵牆。大部分內容是Ajax。所以當選擇器運行時,它只會拾取容器中的內容。我將不得不在每個頁面上運行YAHOO.util.Selector.query('classname')? – jugger000 2009-10-20 15:34:50

回答

0

嘗試此javascript:

var inputs = document.getElementsByTagName("input"); 
var hoverOn = function() { 
    this.className = "hover"; 
}; 
var hoverOff = function() { 
    this.className = ""; 
}; 
for (var i = 0, l = inputs.length; i < l; ++i) { 
    inputs[i].onmouseover = hoverOn; 
    inputs[i].onmouseout = hoverOff; 
} 

而CSS:

input.hover { 
    background-color: #f0f; 
} 

這裏的上面,這在Firefox的作​​品...讓我知道IE6如​​何去.. http://jsbin.com/aseli

+1

您可能希望從「輸入」元素集合中排除按鈕,複選框,廣播,提交,重置和圖像類型。 – scunliffe 2009-10-20 13:54:52

+0

是的,可能...可以是讀者的練習,但是.. – nickf 2009-10-20 13:59:39

0

HTML:

<input type="text" id="elementid" /> 

JS:

var oElement = document.getElementById("elementid"); 
function fnCallback(e) { alert("mouse over"); } 
YAHOO.util.Event.addListener(oElement, "mouseover", fnCallback); 

http://developer.yahoo.com/yui/event/#start

+0

你要爲每個輸入元素添加一個id? – nickf 2009-10-20 13:56:31

+0

不,這不是必需的!您只需告訴Javascript哪些輸入字段是您的目標。發佈您的輸入字段,我們會找到更好的選擇器。 – powtac 2009-10-20 14:13:26

+0

嗨,這是完美的。我將它與YAHOO.util.Selector.query結合起來,以獲得特定的類。但是我撞到了另一堵牆。大部分內容是Ajax。所以當選擇器運行時,它只會拾取容器中的內容。我將不得不在每個頁面上運行YAHOO.util.Selector.query('classname')? – jugger000 2009-10-20 15:33:30