我正在使用一个空框架来处理伪异步表单提交。对于那些不熟悉该技术的人来说,这个想法是name在表单的属性中引用框架的属性,以便表单的targetURIaction在框架中解析,并且不会中断用户体验。
为了向用户反馈,我需要使用脚本来监听表单上的loadorerror事件,因为这有效地使整个 UX 脚本依赖,我只注入框架并通过脚本添加表单的目标引用。
问题是框架一旦被注入页面就会触发加载事件:默认行为。
我可以使用 jQuery 的one方法和e.stopImmediatePropagation()(这里)来缓解这种情况,或者我可以注入框架然后绑定事件(这里)。但是这两个选项都非常违反直觉——代码当然需要注释以避免看起来像一个错误。
TL;DR:有什么方法可以修改或限定 iframe 以阻止它在注入时触发错误的加载事件?
我试过的
- 无
src属性 src设置为about:blank(上面是隐含的)src调成#src调成javascript:void 0src设置为空数据 URIdata:text/plain;base64,;srcdoc设置为空或接近空的字符串