我遇到滑块问题。当我抓住处理程序时,我改变图像的.src,只是为了改变它的颜色。但是,我希望它在我释放鼠标按钮时更改回原始颜色。我尝试了两件事。
1)在处理程序mouseup事件上更改它:这只有在我释放处理程序上的按钮时才有效,所以这不是解决方案。
2)Changin它回到了窗口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
}
答案 0 :(得分:6)
您应该将mouseup
处理程序附加到document
对象。
答案 1 :(得分:1)
onmouseout
事件怎么样?
答案 2 :(得分:1)
这是代码。我在文档准备就绪时加载处理函数。
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
}