jquery - 当您部分标记文本时,为什么 Opera 不抛出点击事件?

标签 jquery html opera jquery-click-event

给定以下 HTML:

<div contenteditable="true">Some text</div>

还有一些用JQuery检测点击事件的JS:

$("div").click(function() {
   alert('click!');
});

如果您在 div 中选择文本的一部分,Opera 不会抛出点击事件(在 Linux 上用 Opera 11.61 和在 Windows 上用 11.62 测试过) .双击单词以部分标记它确实有效。

在 IE7-9、Firefox、Chrome 和 Safari 中 抛出该事件。有一个稍微修改的 JSFiddle here .

这是预期的行为、JQuery 错误、Opera 错误还是其他原因?

最佳答案

哪种行为是“正确的”当然是一个有趣的问题。我的看法:我个人认为 Opera 的行为更有意义,因为用户在这里打算做的显然不是“点击”某物,而是“选择”某物。

另一方面,我也认为Opera应该改变它以兼容其他浏览器(除非我们能让其他浏览器匹配Opera)。兼容性非常非常重要。所以,与我的 Opera 员工交谈:我认为我们是正确的,我认为我们应该解决这个问题 :-p

关于jquery - 当您部分标记文本时,为什么 Opera 不抛出点击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10137897/

相关文章:

javascript - 在 Opera 或 Firefox 中加载后,如何在网站上修补客户端 javascript?

javascript删除动态生成tr td中的最后一个子项

jquery - Bootstrap radio 在 sm 或更大时水平,当 xs 时垂直

html - Css table th 左边框跨线

html - 无法在 HTML 表单提交按钮上设置圆 Angular ?

java - 如何修改/自定义/反编译 Opera mini jar 文件?

javascript - rails : Nested remote form doesn't work on page load

javascript - 在 Angular 路由/ View 加载后加载 jQuery 脚本

javascript - Indexeddb 添加新值而不是更新现有值

javascript - Ziggeo、WebRTC 无法读取视频文件