最近接触到canvas的一个项目,很容易的一个效果,点击canvas绘制选中框,其中当点击速度过快时,就会选中整个canvas,这点很苦恼!
解决办法:使用onselectstart="return false;"
<canvas class="canvas" width="500px" height="500px" id="canvas" onselectstart="return false;"></canvas>
这样就解决了双击选中整个canvas的问题!
更新:
更新参考:地址
onselectstart几乎可以用于所有对象,其触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中)。该事件常使用于使目标对象“禁止变蓝”,比如在很多地方当用户双击时,一些元素会变成蓝色(选中状态),而当我们要避免这种情况时就可以使用该事件。
与此功能相似的还有onselect,它是在文本框(input、textarea)内的文本被选中时所触发的事件,其触发时间是在文本被选择以后(即文本已经被选择,已经显式的表现出来)。该事件只被input和textarea标签支持。
注:
1、onselectstart事件不被input和textarea标签支持,而onselect事件只被input和textarea支持;
2、Firefox/Opera不支持onselectstart事件Firefox中可以使用CSS "-moz-user-select:none"属性来禁止文本选定;
3、webkit浏览器可以使用“-khtml-user-select”,当然也可以使用onselectstart事件来阻止用户选定元素内文本;
巴拉巴拉: