javascript - 选择框和 Firefox 上的模糊事件

标签 javascript jquery html events blur

我有以下情况:

一个选择框和一个工具提示,当用户单击该框以选择一个选项时出现。要显示工具提示,可以使用 css (select:focus ~ .tooltip) 或使用 focus() 事件的 jquery 轻松完成。 当用户选择某些东西时,选择框关闭并且工具提示消失。这可以通过 change() 事件来完成。

但是有一个问题。如果用户打开选择框并单击页面上的其他位置,列表将关闭,并且在 Firefox 中不会立即触发 blur 事件,因此工具提示仍然可见。如果用户在选择之外进行第二次单击,则会触发模糊事件并且工具提示会消失。

Chrome 和 IE 可以,Firefox 不行。

有人知道 Firefox 中的解决方法吗?

谢谢, 伊斯特万

最佳答案

在玩了大约半小时之后,我不敢说我​​的输入是:。并且出于以下原因:

  • Firefox 直到第二次点击才会触发模糊事件。从选择的下拉菜单中可以明显看出这一点,它仍然是蓝色的。
  • 因此,纯 CSS 解决方案绝对行不通
  • JavaScript 解决方案也几乎是不可能的,因为第一次点击似乎无处可去
    • 我已经通过尝试记录正文和文档点击来检查这一点,您会发现两者都没有第一次触发。事实上,选择也没有,所以我知道点击在哪个级别注册

查看我的 JSFiddle为了我的工作。对不起!我想这只是一个 FF 问题。

$(document).click(function() {
    console.log("document");
});
$("body").click(function() {
    console.log("body");
});
$("select").click(function(e) {
    e.stopPropagation();
    console.log("select");
});

编辑:抱歉,发布了一个旧的 JSFiddle。

关于javascript - 选择框和 Firefox 上的模糊事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17325737/

相关文章:

javascript - $scope.$watch in Angular 在 Ionic/Cordova 中不起作用

javascript - 直到为时已晚才应用 slider jquery 类

javascript - 点击外部div和图标,div隐藏

javascript - 使用javascript解析html中的数组并每次渲染不同的跨度

html - 从 Logo 中删除特定的悬停效果,同时保留返回主页的链接

javascript - 使网页适合屏幕

javascript - Personnage 类,写入函数的普通 javascript 错误

javascript - jQuery .eq(index) 与 [index] 如果两者都返回一个对象?

javascript - setInterval 使用 ajax 和特定的目标函数

html - 将 `clip-path` 与图像对齐