我已经构建了一个 webapp,为了稍微润色一下,我想添加 mousedown 和 mouseup 处理程序来交换图像(在这种情况下,使按钮看起来像是被按下了)。
我的代码是这样的:
window.onload = function() {
//preload mouse down image here via Image()
$("#button_img").mousedown(function(){$("#button_img").attr("src","button_on.png");});
$("#button_img").mouseup(function(){$("#button_img").attr("src","button_off.png")});
}
这在桌面上运行得很好,但在移动设备上(在 iOS Safari 中测试),mousedown 和 mouseup 事件同时发生,所以实际上什么也没发生。
我尝试在 jQueryMobile 中使用 vmousedown 和 vmouseup 事件,但是这段代码:
//include jquerymobile.js and jquerymobile.css
window.onload = function() {
//preload mouse down image here via Image()
$("#button_img").vmousedown(function(){$("#button_img").attr("src","button_on.png");});
$("#button_img").vmouseup(function(){$("#button_img").attr("src","button_off.png")});
}
只是给了我 vmousedown 和 vmouseup 不存在的错误。此外,jQueryMobile 覆盖了我已经为页面编写的 CSS。
那么有没有办法让 vmousedown 和 vmouseup 工作,并且在没有 jQuery Mobile 的 CSS 的情况下做到这一点?