我有一个网站,其中包含一个iframe,该iframe加载了我无法控制的模板。这个想法是模板必须放下模板才能与其他东西交互。我必须将模板加载到iframe上,它会自动发出警报并在iframe中播放一些内容。问题是我需要一种方法来接受警报或通过模拟键盘Enter键来关闭警报,或者需要任何一种使我能够关闭警报的方法。我将其设置为超时间隔。
我尝试对iframe使用sandbox属性,但这无法消除警报功能,因此在这种情况下不起作用。
我需要使用纯JavaScript的解决方案。在这种情况下,使用jquery将增加更多的问题,但是如果这是唯一的解决方案,则可以考虑。
我发现了这些东西,但是不起作用:
const keyboardEvent = document.createEvent('KeyboardEvent')
const initMethod =
typeof keyboardEvent.initKeyboardEvent !== 'undefined'
? 'initKeyboardEvent'
: 'initKeyEvent'
keyboardEvent[initMethod](
'keypress', // event type: keydown, keyup, keypress
true, // bubbles
true, // cancelable
window, // view: should be window
false, // ctrlKey
false, // altKey
false, // shiftKey
false, // metaKey
13, // keyCode: unsigned long - the virtual key code, else 0
0 // charCode: unsigned long - the Unicode character associated with the depressed key, else 0
)
document.dispatchEvent(keyboardEvent)
有什么不好的吗?