Firefox:按下鼠标按钮时鼠标hover不起作用
这是我想要做的: https : //gfycat.com/ValidEmbarrassedHochstettersfrog
我想使用鼠标突出显示
一些
对象。 此video录制在Chrome上,完美运行。 不幸的是它不在Firefox上。
下面是它的工作原理:
- 用户点击表格中的第一个单元格
- 他将鼠标拖到其他牢房
- 正在突出显示细胞
码:
$("#productList").on("mousedown", "td", function () { //save from where to start } $("#productList").on("mouseover mouseenter mouseover hover", "td", function () { //update highlighting, modify classes //this function isn't fired when I click on one of and drag mouse somewhere else }
其中#productList 是
。
虽然在Chrome中一切都按预期工作,但Firefox似乎没有激活mouseenter事件(以及我尝试过的任何其他事件)。 Mouseover仅适用于我点击过的对象。 当我使用鼠标拖动时,Firefox似乎只考虑聚焦对象。
我怎么能绕过它呢?
编辑:一件重要的事情要提到:我在每个单元格中都有一个 。 这可能会导致问题https://jsfiddle.net/q8v7f6uv/6/
您使用的是哪个版本的Firefox? 我试图以简单的方式复制你所描述的内容,它似乎适用于FF(47.0.1)和Chrome。
在mousedown上:
$(this).css("background", "red");
在mouseenter上:
$(this).css("background", "yellow");
https://jsfiddle.net/q8v7f6uv/1/
编辑:
在您对问题进行编辑之后..它在Firefox中无效,因为文本框正在浏览器中“拖动”,就像您可以突出显示文本并将其拖放到另一个文本字段中一样。
您可以使用css禁用此function: user-drag: none; 和user-select: none; 这解决了你的问题。 注意我为input 添加的额外css规则。 https://jsfiddle.net/q8v7f6uv/10/
谢谢。 它似乎适用于jsfiddle。 我有一个情况,当按下鼠标左键时,鼠标中心事件没有在FF上触发。
我没有看到您的示例与我们的代码之间存在任何明显差异。
| |