jquery - IE Jquery click() 事件触发不起作用

标签 jquery internet-explorer

我正在尝试编写一些代码,允许用户按 Enter 并根据输入的文本获取请求的结果。以下代码适用于 Chrome,但不适用于 IE 8 和 7(我还没有尝试过其他版本的 IE) 我第一次使用Jquery:

    function ifEnterClick(event) {
    if (event.keyCode == 13) {
        var elm = '#findButton';
        $(elm).click();
    }
}

我也尝试过 JavaScript:

function ifEnterClick(event) {
    if (event.keyCode == 13) {
        var obj = document
                .getElementById("findButton");
        fireEvent(obj, 'click');
    }
}
function fireEvent(obj, evt) {

    var fireOnThis = obj;
    if (document.createEvent) {
        var evObj = document.createEvent('MouseEvents');
        evObj.initEvent(evt, true, false);
        fireOnThis.dispatchEvent(evObj);

    } else if (document.createEventObject) {
        var evObj = document.createEventObject();
        fireOnThis.fireEvent('on' + evt, evObj);
    }
}

在这两种情况下,它都适用于 Chrome,但不适用于 IE。

最佳答案

试试这个:

function ifEnterClick(event) {
  var keycode = (window.event) ? event.keyCode : event.which;
  if (event.keyCode == 13) {
    var elm = '#findButton';
    $(elm).click();
  }
}

相关:JavaScript KeyCode Values are "undefined" in Internet Explorer 8

关于jquery - IE Jquery click() 事件触发不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18872595/

相关文章:

javascript - 获取堆栈中具有绝对位置的下一个元素

javascript - 如何在 WordPress 管理控制面板中运行 Javascript?

javascript - get() jquery 在我的案例中未定义

internet-explorer - Internet Explorer - 过滤阴影属性使内部文本难看

javascript - Internet Explorer 8 原型(prototype)和 XMLHttpRequest

JavaScript 拖动绘制的 Canvas 元素

javascript - 使用 JavaScript (jQuery) 插入时无法显示 TrustPilot HTML

internet-explorer - 如何修改 IE Gradient CSS 以使用高度和第三种颜色?

javascript - 用 JS 检查时 IE 8 的版本错误

jquery - IE7,悬停 div 仅对鼠标悬停在边框上有反应