【问题标题】:Remove focus from iframe?从 iframe 中删除焦点?
【发布时间】:2015-07-22 10:14:08
【问题描述】:

我有这个代码:

<iframe src="/go/afflink.php" width="100%" height="400px" seamless="seamless" scrolling="yes" frameborder="0"></iframe>

显然afflink.php 是指向外部网站的附属链接,所以我无权访问它。

iframe 位于我的评论页面的底部。问题是每当我打开页面时,浏览器都会向下滚动到底部以显示 iframe。我希望浏览器忽略焦点。我该怎么做?

我搜索了 stackoverflow,但似乎没有“javascript 专注于其他元素”对我有用。

【问题讨论】:

  • 这很不寻常。无论如何,你在加载时尝试过这个吗? window.scrollTo(0, 0);
  • 试过了。不工作

标签: javascript php jquery iframe focus


【解决方案1】:

如果假设 iframe 不是从同一个域提供的。您可以在页脚中的 iframe 之后放置任何其他可聚焦的 dom 元素,并将 autofocus 设置为 true。如果这不起作用,请在父主窗口中尝试以下操作:

$(window).on('load', function() {
    setTimeout(function(){$("body").focus()}, 100);
});

或者通过 vanilla JS

window.onload = function() {
    document.getElementById("some-focusable-element-from-parent-window").focus();
};

【讨论】:

  • 您能否再解释一下,为什么scrolling (w3schools.com/tags/att_iframe_scrolling.asp) 会导致所描述的行为?
  • 我按照你说的做了,但没有结果。即使我完全删除滚动它也不起作用。有什么想法吗?
猜你喜欢
  • 2014-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-04
  • 2011-05-06
  • 2015-05-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多