我是一所学校的老师,每个教室都有一个SmartBoard互动白板。我试图创建一个web应用程序的孩子们使用,基本上涉及到拖放各种元素的网页。实际上,我已经创建了一个可以在电脑上用鼠标使用的程序。然而,在SmartBoard上,拖放操作确实滞后,有时甚至完全失败。
据我所知,白板并没有模仿onmousedown
的能力,相反,所有的触摸都被解释为onclick
。还有别的办法吗?我想不出一种不使用onmouseup
和onmousedown
来实现拖放的方法,我也不知道有什么方法可以让白板以不同的方式解释输入。
我能想到的解决这个问题的唯一方法是用Java编写应用程序,因为我从经验中知道这是可行的。然而,这显然要做更多的工作,所以如果没有必要,我宁愿不做。
我要做的第一件事是记录智能板允许您注册的所有事件:
function log(e) {
console.log(e.type, e.pageX, e.pageY, e);
}
document.addEventListener('mousedown',log,false);
document.addEventListener('mousemove',log,false);
document.addEventListener('mouseup',log,false);
(console.log是Google Chrome自带的,你可能需要在其他浏览器上安装插件)
这将帮助你决定做什么。一个可能的解决方案是使用双击来触发拖动动作的开始/停止。