gpt4 book ai didi

jQuery 焦点不滚动

转载 作者:行者123 更新时间:2023-12-03 21:30:50 25 4
gpt4 key购买 nike

如何将焦点集中到 HTML 元素(例如“a”)并且不更改当前的滚动设置。

例如。如果我使用:

$('#link').focus();

并且此链接在屏幕中不可见(例如位于可见区域下方),浏览器向下滚动以显示该元素。如何在不移动滚动条的情况下设置焦点?我需要将滚动条保留在原来的位置。

我已经尝试过这个,但它会产生一些屏幕闪烁,这是一个黑客,而不是一个优雅的解决方案:

var st=$(document).scrollTop();
$('#link').focus();
$(document).scrollTop(st);

有人可以帮我吗?

最佳答案

试试这个:

$.fn.focusWithoutScrolling = function(){
var x = window.scrollX, y = window.scrollY;
this.focus();
window.scrollTo(x, y);
return this; //chainability

};

然后

$('#link').focusWithoutScrolling();

编辑:

据报道,这在 IE10 中不起作用。可能的解决方案是使用:

var x = $(document).scrollLeft(), y = $(document).scrollTop();

但我还没有测试过。

关于jQuery 焦点不滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4898203/

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