zoukankan      html  css  js  c++  java
  • JavaScript_js模拟键盘输入

    function fireKeyEvent(el, evtType, keyCode) {
                var evtObj;
                if (document.createEvent) {
                    if (window.KeyEvent) {//firefox 浏览器下模拟事件
                        evtObj = document.createEvent('KeyEvents');
                        evtObj.initKeyEvent(evtType, true, true, window, true, false, false, false, keyCode, 0);
                    } else {//chrome 浏览器下模拟事件
                        evtObj = document.createEvent('UIEvents');
                        evtObj.initUIEvent(evtType, true, true, window, 1);
    
                        delete evtObj.keyCode;
                        if (typeof evtObj.keyCode === "undefined") {//为了模拟keycode
                            Object.defineProperty(evtObj, "keyCode", { value: keyCode });                       
                        } else {
                            evtObj.key = String.fromCharCode(keyCode);
                        }
    
                        if (typeof evtObj.ctrlKey === 'undefined') {//为了模拟ctrl键
                            Object.defineProperty(evtObj, "ctrlKey", { value: true });
                        } else {
                            evtObj.ctrlKey = true;
                        }
                    }
                    el.dispatchEvent(evtObj);
    
                } else if (document.createEventObject) {//IE 浏览器下模拟事件
                    evtObj = document.createEventObject();
                    evtObj.keyCode = keyCode
                    el.fireEvent('on' + evtType, evtObj);
                }
            }
            
            var testPassword = "181818";
            var tp;
            var cCode;
            var testss = document.getElementById("input_txt_50531_740884");
            for(var i=0;i<testPassword.length;i++){
                cCode = testPassword.charCodeAt(i);
                fireKeyEvent(testss, "keydown", cCode);
                fireKeyEvent(testss, "keypress", cCode);
                fireKeyEvent(testss, "keyup", cCode);
            }
            
            
            
  • 相关阅读:
    Ubuntu 安装和使用 Supervisor(进程管理)
    Ubuntu查看端口占用及关闭
    Ubuntu 上安装 SQL Server 并创建数据库
    Kafka常用命令
    sql bug
    TiDB之PCTP(数据库专家)
    04 MySQL之函数
    05 MySQL之查询、插入、更新与删除
    03 MySQL之数据类型和运算符
    06 MySQL之索引
  • 原文地址:https://www.cnblogs.com/gisblogs/p/5821665.html
Copyright © 2011-2022 走看看