如何禁止鼠标拖动时选中文本

coin_age 2003-06-10 04:36:04
当按下鼠标左键在一个table上拖动时,会使表格中的文本处于选中状态
有没有什么办法避免文本被选中?

参见http://www.grandeur-tranding.com/temp/test.htm
我的目标是在一个表格上,当鼠标拖动时显示一个拖动的边框
我使用了四个层画矩形来实现这一点,并且在每一个TD上定义onmouseup, onmousedown,和onmousemove
但是如果不禁止文本被选中,就会影响TD响应onmousemove事件。
我的解决办法是在document上定义了一个listener
function dmm(){
window.event.returnValue = false;
}
document.onmousemove = dmm;
由于某些原因,我想尽量避免在document上定义listerner,各位有没有更好的办法?

另外,我的做法有时候会出现一些小问题,比如有时不能及时的响应onmouseup事件
也请高手帮助解决。
...全文
964 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangking 2003-06-10
  • 打赏
  • 举报
回复
<body onselectstart="return false">
coin_age 2003-06-10
  • 打赏
  • 举报
回复
不是选中整个表格也是能把文字选中
不过,加在body中后的确避免了刚才的情况
我看问题还是出在我写的onmousexxx上,因为我在下面没加onmousexxx的table上
无论如何都不会选中
fason 2003-06-10
  • 打赏
  • 举报
回复
选中可能是你把整个表格都选了,可以加在body中试试
coin_age 2003-06-10
  • 打赏
  • 举报
回复
而且,我使用您的方法时,如果鼠标拖动过快的话,有时候也会把文字选中
coin_age 2003-06-10
  • 打赏
  • 举报
回复
多谢版主,我想知道在哪里能学到onselectstart这种用法
还有,为什么我的这个东西有时候会出现一些小问题,谢谢。
fason 2003-06-10
  • 打赏
  • 举报
回复
<table border="0" width="100" onselectstart="return false">
<tr>
<td width="100%">dddddddddd</td>
</tr>
</table>

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧