gpt4 book ai didi

javascript - 如何测试浏览器对事件的支持

转载 作者:行者123 更新时间:2023-11-29 16:17:23 25 4
gpt4 key购买 nike

具体来说,测试 input[type=date] 是否触发了 input 事件?

最佳答案

通过查看 this网站,我建议你试试

Test B: Use setAttribute on an input to set an oninput and check to see if node.oninput is a function Test C: Use the w3 event api to create an input and fake a keypress to see if oninput fires

这是来自测试 C 的 JavaScript

function testC(){
var input = document.createElement('input'),
e = document.createEvent("KeyboardEvent");
// set type for DATE
input.setAttribute('type', 'date');
e.initKeyEvent("keypress", true, true, window, false, false, false, false, 0, "e".charCodeAt(0));
// use initKeyboardEvent for webkit
document.body.appendChild(input);
input.addEventListener("input", function(e) { alert('C Successful'); e.preventDefault(); e.stopPropagation(); }, false);
input.focus();
input.dispatchEvent(e);
document.body.removeChild(input);
}

编辑:测试代码复制自the test page只有几个小的变化(var 的位置,type=date,alert)。我在 chrome 中运行它(在将 initKeyEvent 更改为 initKeyboardEvent 之后)刚才它没有产生任何结果,但是注释掉了 removeChild 行并手动执行此操作导致成功消息。不确定为什么模拟事件没有调用它,因此您需要在将它应用到您的代码中之前查看它。

关于javascript - 如何测试浏览器对事件的支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13478403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com