在尝试使用Canvas制作游戏时,我注意到平板电脑/手机浏览器上存在一些怪癖。
1)如何禁用Canvas可选?看起来当用户触摸它时,它突出显示画布,并且几乎尝试选择它。这是不受欢迎的。
2)浏览器幻灯片手势。某些浏览器具有滑动手势,可覆盖在画布或网页中完成的任何移动捕获。这非常令人讨厌并且也是不受欢迎的。
3)使用HTML UI元素进行画布控制。我注意到当画布存在其他ui元素(例如文本)时,有时在画布中单击或拖动会突出显示HTML的一部分,而是拖动HTML元素而不是点击画布。
非常感谢任何帮助!我希望HTML5足够成熟,以便在移动设备和桌面设备上实现良好的兼容性。我们的想法是能够编码一次并随处播放....谢谢!
答案 0 :(得分:4)
这应该可以解决与#1和#3相关的问题:
canvas.addEventListener('selectstart', function(e) { e.preventDefault(); return false; }, false);
#2看起来像是一个非常独立的问题,但我从来没有遇到滑动手势覆盖任何画布的问题。尝试在触摸事件开始时使用e.preventDefault();
。