Javascript JS将项目滚动到视图中不工作
我在将打开的手风琴项目滚动到手风琴所在容器的顶部时遇到问题。或者,滚动到视图中。 例如: 我有一个DIV,里面有手风琴。 DIV高度固定为260px,而且手风琴项目比容器容纳的多,因此自然会有卷轴。 如果用户希望展开div中可见的最后一个项目,它将打开,但将展开的内容保留在视野之外,然后用户必须向下滚动才能看到它。 如何使扩展内容进入视图? 限制: 无法依赖DOM作为引用,因为这样会影响整个DOM滚动,而不是DIV滚动。 这就是我的代码: 关于要素: 脚本: 被注释掉的部分是我试过但不起作用的部分。 在调试器中,我已经检查了脚本的每一行,它按照预期工作,直到需要将所需的元素滚动到view/to topJavascript JS将项目滚动到视图中不工作,javascript,jquery,scroll,Javascript,Jquery,Scroll,我在将打开的手风琴项目滚动到手风琴所在容器的顶部时遇到问题。或者,滚动到视图中。 例如: 我有一个DIV,里面有手风琴。 DIV高度固定为260px,而且手风琴项目比容器容纳的多,因此自然会有卷轴。 如果用户希望展开div中可见的最后一个项目,它将打开,但将展开的内容保留在视野之外,然后用户必须向下滚动才能看到它。 如何使扩展内容进入视图? 限制: 无法依赖DOM作为引用,因为这样会影响整个DOM滚动,而不是DIV滚动。 这就是我的代码: 关于要素: 脚本: 被注释掉的部分是我试过但不起作用的部
function setInScrollViewIfNeeded(elem) {
var isExpanded = $(elem).attr("aria-expanded");
var expandingElem = $(elem).attr("href");
expandingElem = expandingElem.substring(1)
if (isExpanded == "true") {
}
else {
var el = document.getElementById(expandingElem);
//el.scrollIntoView(true);
//$(el).animate({ scrollTop: 0 }, "fast");
// $(el).scrollTop(0);
}
}
更新-小提琴:
你能摆好小提琴吗?根据描述,很难理解您试图实现的目标。您有onclick=scrollTr;在小提琴中,但没有定义scrollTr。这与单击不同。。。但我删除了它,并更新了小提琴,以避免进一步的混乱。
function setInScrollViewIfNeeded(elem) {
var isExpanded = $(elem).attr("aria-expanded");
var expandingElem = $(elem).attr("href");
expandingElem = expandingElem.substring(1)
if (isExpanded == "true") {
}
else {
var el = document.getElementById(expandingElem);
//el.scrollIntoView(true);
//$(el).animate({ scrollTop: 0 }, "fast");
// $(el).scrollTop(0);
}
}