关键在于 contentWindow 属性
let ueIframe = document.querySelector('iframe#ueditor_0');// 键盘快捷方式let pressedKeys = [];let quickKeys = {send: 'control,enter',close: 'alt,a',}ueIframe.contentWindow.addEventListener("keydown", function (e) {if (e.key.toLowerCase() == 'enter') {if (ue.isFocus()) {// e.preventDefault();}}if (!pressedKeys.includes(e.key.toLowerCase())) {pressedKeys.push(e.key.toLowerCase());}});ueIframe.contentWindow.addEventListener("keyup", function (e) {// console.log(e)// console.log(e.key.toLowerCase())switch (pressedKeys.toString()) {case quickKeys.send:console.log('按下了 发送 快捷键');sendMsgToPlayer();break;case quickKeys.close:console.log('按下了 关闭 快捷键');//当你在iframe页面关闭自身时var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引parent.layer.close(index); //再执行关闭break;}pressedKeys = pressedKeys.filter((item, index, arr) => {return item != e.key.toLowerCase();});if(pressedKeys.length != 1 || pressedKeys[0] != 'control') {pressedKeys = [];}});
