我遇到了滑塊問題。當我抓住處理程序時,我改變了圖像的.src,只是爲了改變它的顏色。但是,當我釋放鼠標按鈕時,我希望它變回原來的顏色。我嘗試了兩件事。如果釋放不在同一元素上,則丟失MouseUp事件
1)在處理程序mouseup事件中更改它:只有當我釋放處理程序上的按鈕時,這才起作用,所以這不是解決方案。
2)長安回窗口mouseup事件:事件沒有正常開火。如果我單擊並釋放窗口的任何位置,事件將正常觸發,但是如果我單擊處理程序中,將光標移動到窗口的任何其他位置,然後釋放按鈕,事件將不會觸發。
順便說一句,即時通訊使用原型js框架。
解決方案?謝謝
這是代碼。當文檔準備就緒時,我加載處理函數。
function handler()
{
var handler = $('handler');
Event.observe(window, "mouseup", function(){
alert('salta'); //to see when mouseup fires
if(handler.src=='http://localhost/moodle/blocks/videoavatar/eggface/trunk/gripper_o.png'){ //orange
handler.src='http://localhost/moodle/blocks/videoavatar/eggface/trunk/gripper.png';} //grey
});
Event.observe(handler,'mousedown',function(){handler.src='http://localhost/moodle/blocks/videoavatar/eggface/trunk/gripper_o.png';}); //orange
}
代碼會很好。否則難以調試。 – 2010-09-30 14:38:17
您將'mouseup'處理程序附加到'window',而不是'document'。他們不一樣。 – lincolnk 2010-09-30 17:37:34