14

我想使用 jquery 或 javascript 将焦点放在特定的 div 上。我刚刚使用document.getElementById("pack_0").focus();了“pack_0”是我的 div id,但它不起作用。我注意到由于一些弹出编码,我的 url 中已经添加了 '#',所以我的 url 是 'http://localhost/website/book#'

那么,当 # in url 时,任何人都可以帮助我强制完全专注于 div 吗?

提前致谢。

4

3 回答 3

28

从这个问题来看,我认为“聚焦 div”的实际意思是“改变窗口的垂直滚动位置,使 div 可见”。如果是这种情况,您可以使用以下 jQuery 代码:

$(window).scrollTop($('#pack_0').offset().top);
于 2012-06-14T09:58:33.150 回答
9

Anthony Grist 的假设在您的情况下可能是正确的。但是,如果希望的焦点对象是一个 DIV,它可能会帮助其他搜索该主题的人知道,该 DIV 应该有一个tabindex集,例如 tabindex="9999"。否则,大多数浏览器不会分配焦点。

于 2014-01-12T18:01:20.110 回答
8

要首先将焦点设置为 div,我们需要为特定 div 定义 tabindex,如下所示

<div class="leftbar-btn-module" tabindex="-1">'Content'</div>

和 jquery 设置焦点

jQuery(".leftbar-btn-module").attr("tabindex",-1).focus();
于 2015-03-30T10:37:36.737 回答