可能重复:
禁用 Opera 中元素的双击事件
我的 Opera 浏览器有问题。它只是在双击左键/选择时显示上下文菜单的唯一一个。我的 div 页面是空的(背景图片)。他们已经挂钩了 click 和 contextmenu 事件,当您单击时 click 工作正常slow。如果您单击两次更快的文本会被选中。我观察到的可能主要原因是使用inline-block,只是因为将整体视为一行。这是示例代码:
<!doctype html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.8/dojo/dojo.js" data-dojo-config="async: 1"></script>
</head>
<body>
<div style="display: inline-block;">
<table>
<tr>
<th colspan="3">Header</th>
</tr>
<tr>
<td></td>
<td>
<div id="test" style="height: 38px; width: 38px; background: red;">
</div>
</td>
<td></td>
</tr>
</table>
</div>
<div style="display: inline-block;">
<table>
<tr>
<th colspan="3">Header</th>
</tr>
<tr>
<td></td>
<td>
<div id="test" style="height: 38px; width: 38px; background: red;">
</div>
</td>
<td></td>
</tr>
</table>
</div>
</body>
</html>
<script type="text/javascript">
require(["dojo/dom", "dojo/on","dojo/domReady!"], function(dom, on) {
on(dom.byId('test'), 'click', function() { /* do something here */ return false; });
});
</script>
是否可以防止它,留下inline-block?如果可能的话,我对 Dojo 的解决方案特别感兴趣。