我有一个嵌入到 iFrame 中的 Web 应用程序。对于我们的一个 HTML 页面,我们有很多文本框,而且内容非常大,因此必须向下滚动才能浏览内容。当我们使用 Tab 键浏览文本框时,如果文本框出现在页面中间的某处,则 iFrame 不会滚动,这可以通过鼠标滚动看到。请注意,文本框的焦点就在那里。 这个问题只发生在 chrome 上,它在 Firefox 和 IE11 中工作正常。 在 code.google.com 的 chromium 部分有一个线程提到了这个问题,但仍然没有找到解决方案。 Issue Link 复制问题的示例代码在这里 Sample Code
最佳答案
此问题已在最新版本的 Chrome(即 43.0 及更高版本)中得到修复。无论如何请尝试下面的 jquery。
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('input').focus(function() {
$('html, body').animate({
scrollTop: $(this).offset().top - 50
}, 20);
});
});
</script>
</head>
关于javascript - 在 Chrome 上使用 Tab 键时 iFrame 不滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30317349/