谷歌浏览器不会在单选按钮上触发模糊事件?

时间:2011-04-21 13:33:32

标签: jquery html forms google-chrome onblur

这是我在这里的第一篇文章 - 你好,每个人

我目前正在开发一个支持css和jquery的html表单。该表格将由“没有经验的用户”使用,因此我的重点在于良好的可用性。因此,我提供了对每个输入字段的提示以及进一步的说明。为了显示我正在使用onfocus / onblur javascript事件的提示,所以一次只显示一个提示。当我只有type="text"的输入字段但输入字段为type="radio"时,我的浏览效果很好。我在谷歌浏览器中遇到了麻烦。

我在jsfiddle.net 上做了一个快速示例,以便您了解我的意思。那里的代码与我在表单中使用的代码非常相似,所以我不打算在这里发布它。到目前为止,我测试的每个浏览器中都会弹出警报,但谷歌浏览器除外。我想知道为什么?是否有任何已知的解决方案或解决方法?

3 个答案:

答案 0 :(得分:4)

来自quirksmode

  

Safari和Chrome不会触发   用户使用时聚焦/模糊事件   鼠标访问复选框,无线电   或按钮。文本字段,textareas和   选择框正常工作。

有一些建议可以解决这个here

答案 1 :(得分:3)

Working sample

$('input').on({
    click: function (e) {
        this.focus();
        $('#' + this.id + 'msg').show();
    },
    blur: function (e) {
        $('#' + this.id + 'msg').hide();
    }
});

答案 2 :(得分:2)

blur适用于某些版本的Chrome(但不适用于我的10.0.648.205),但前提是您要远离整个元素集合。不确定这是否有用,但这可行:

$('input:radio').click(function() {
    alert('why does this not show up in google chrome?!');
});

HTH。