gpt4 book ai didi

javascript - 测试页面上是否存在 div 并将焦点设置为第一个

转载 作者:行者123 更新时间:2023-11-28 19:23:55 25 4
gpt4 key购买 nike

我有以下 HTML,仅在出现错误状态时出现:

<div class="validation-summary-errors text-danger">
<span>Errors:</span>
<ul>
<li>Error, please refresh.</li>
</ul>
</div>

我想将焦点设置到页面下方足够远的 DIV 上,当用户位于顶部时看不到它,所以我在页面上尝试了这个 jQuery:

  if ($('.validation-summary-errors').length) {
$('.validation-summary-errors').first().focus();
}

但它不起作用,页面重新加载时焦点仍然位于默认位置(页面顶部)。

最佳答案

.focus() 不适用于 div:

The focus event is sent to an element when it gains focus. This event is implicitly applicable to a limited set of elements, such as form elements (, , etc.) and links (). In recent browser versions, the event can be extended to include all element types by explicitly setting the element's tabindex property. An element can gain focus via keyboard commands, such as the Tab key, or by mouse clicks on the element.

http://api.jquery.com/focus/

将焦点置于 div 或部分的最佳方法是滚动到它。您可以通过 jQuery 使用 scrollTop 来实现此目的:

$('html, body').animate({
scrollTop: $('yourElementHere').offset().top
}, 'slow');

关于javascript - 测试页面上是否存在 div 并将焦点设置为第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28246280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com