【问题标题】:jquery Enter as Tab is not working in Firefox but working fine in Chromejquery Enter as Tab 在 Firefox 中不工作,但在 Chrome 中工作正常
【发布时间】:2014-05-27 12:40:50
【问题描述】:

在 stackoverflow 中某人的帮助下,我使下面的这个脚本在 chrome 中运行良好。

(function($) {
$.fn.enterAsTab = function(options) {
    var settings = $.extend({
        'allowSubmit': false
    }, options);
    $(this).find('input, select, textarea, button').on("keypress", {localSettings: settings}, function(event) {
        if (settings.allowSubmit) {
            var type = $(this).attr("type");
            if (type == "submit") {
                return true;
            }
        }
        if (event.keyCode == 13) {
            var inputs = $(this).parents("form").eq(0).find(":input:visible:not(:disabled):not([readonly])");
            var idx = inputs.index(this);
            if (idx == inputs.length - 1) {
                idx = -1;
            } else {
                inputs[idx + 1].focus(); // handles submit buttons
            }
            try {
                inputs[idx + 1].select();
            }
            catch (err) {
                // handle objects not offering select
            }
            return false;
        }
    });
    return this;
};

})(jQuery);

但此代码在 Firefox 中无法完全运行。不工作的部分是选择。当我处于下拉菜单(选择)中时,我无法使用 enter 移动到下一个字段。

提前谢谢你。

【问题讨论】:

    标签: javascript jquery google-chrome firefox


    【解决方案1】:

    event.keycode 不受 Firefox 支持。 Firefox 需要使用 event.which

    看一看:window.event.keyCode how to do it on Firefox?

    【讨论】:

    • 感谢您的及时回复。问题仅在下拉(选择)、按钮、文本区域和文本字段上工作正常。因此,我认为 keyCode 应该没问题。我也改成了哪个,但还是一样。有人在这里打了代码codepen.io/anon/pen/dmvEy
    猜你喜欢
    • 1970-01-01
    • 2016-10-06
    • 2016-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多