gpt4 book ai didi

jquery - IE8/9 中溢出滚动列表的相对顶部位置

转载 作者:行者123 更新时间:2023-11-28 12:22:47 26 4
gpt4 key购买 nike

我有一个互动,我有一个 <ul>有一长串<li> s 包裹在 <div> 中使它们可滚动的容器。

现在我将列表转换为我想要显示特定 <li> 的状态作为最上面的元素。我不能使用 scrollTop 来做到这一点属性,因为该元素可能离底部很远,无法将其滚动到容器顶部的所需位置。

这就是为什么我将 ul 的相对顶部位置设置为所需值的原因。

请看一下这个 jsFiddle:http://jsfiddle.net/pJfNp/13/

在除 IE8 和 9 之外的所有浏览器中,事件/红色元素显示在顶部,但 Internet Explorer 似乎无法“分离”<ul> 的底部来自 <div> ,它以某种方式固定在那里。如果我尝试使用 scrollTop 会发生什么将其显示为第一项。

我乐于接受关于如何做类似事情的新想法!

最佳答案

在 IE8 中测试过,应该也能在 IE9 中工作:)

jsFiddle demo

var liHeight = $('li.active').height();
$('ul').height( $('ul').height() + (liHeight*3) );
var activePos = $('li.active').position().top;
$('div').animate({scrollTop:activePos},1000);

如果您有时需要显示最后一个 li 这意味着您需要额外的 3 个 li 高度 所以只需将它乘以 3 并将结果添加到 ul 元素高度。
除了动画之外,还可以为 div

scrollTop 设置动画

关于jquery - IE8/9 中溢出滚动列表的相对顶部位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12027047/

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