1

是否有可能阻止 iFrame 元素获得焦点,或者如果没有,至少在这样的 iFrame 获得焦点后立即将焦点返回到父窗口?请提供代码示例。

4

2 回答 2

2

这取决于你真正想要完成的事情以及你试图阻止的焦点方法。您无法设置任何神奇的设置来阻止焦点转到 iframe。

  1. 您可以在 iframe 的顶部放置一个透明元素并让它捕获所有点击,这样 iframe 中的任何内容都不可点击。您可能只使用 CSS 定位它,并且不一定需要 javascript,除非 iframe 大小是动态的或事先不知道。这不会阻止 javascript 代码将焦点设置到 iframe,但会阻止鼠标单击将焦点移动到 iframe。

  2. 您可以定期检查(javascript 轮询)焦点在哪里,如果它不在您自己的文档中,则将其放回您的文档中。这是一种黑客行为。

这是第一个选项的演示:http: //bit.ly/10jzdlp

于 2013-06-15T01:47:21.110 回答
1

如果您遇到的问题是由于 iframe 文档中的脚本聚焦其元素之一,那么一种解决方案可能是使用 iframe 的sandbox属性来阻止 iframe 的文档运行脚本(即将属性设置为不包含标志“允许脚本”的值)。当然,这是否可以接受取决于它是否会破坏其他东西。

于 2018-06-08T14:55:36.510 回答