使用Javascript和css选择器进行滚动
我在滚动弹出窗口方面有点问题。我想滚动弹出其中有div和一些css代码。没有ID或类 HTML CSS代码使用Javascript和css选择器进行滚动,javascript,html,css,Javascript,Html,Css,我在滚动弹出窗口方面有点问题。我想滚动弹出其中有div和一些css代码。没有ID或类 HTML CSS代码 <div style="height: 356px; overflow: hidden auto;"> 相同的代码适用于类和id <div class="123"> 这是一个类似instagram的弹出窗口。我想使用JS代码使用div或css选择器(或同时使用两者)滚动如果页面上只有一个div,那么您的代码可以工作。很可能页面上还有其他div,而您要查找的div
<div style="height: 356px; overflow: hidden auto;">
相同的代码适用于类和id
<div class="123">
这是一个类似instagram的弹出窗口。我想使用JS代码使用div或css选择器(或同时使用两者)滚动如果页面上只有一个div,那么您的代码可以工作。很可能页面上还有其他div,而您要查找的div可能不是第一个 如果要滚动页面上的所有溢出div,可以执行以下操作
var divs = document.getElementsByTagName("div");
for (let div of divs) {
if (div.style.overflow.includes("auto")) {
div.scrollTop = div.scrollHeight;
// break if you only want the first match
// break;
}
}
如果没有,您可以尝试使用并指定父(弹出窗口)id或类名并选择子div来定位确切的div
e、 g
基于您的评论的解决方案
var div=document.querySelector(“div[style='flex-direction:column;']);
div.scrollTop=div.scrollHeight代码>
div{
高度:100px;
宽度:200px;
溢出:自动;
}
Lorem ipsum dolor sit amet,是一位杰出的献身者。维韦拉胡斯托的克拉斯。在厄洛斯·埃吉特·杜伊(eros eget dui accumsan accumsan and suscipit ante)的监狱里。埃涅亚人的尊严、卢克图斯·麦格纳·奎斯、鲁特鲁姆·奥古斯。
document.getElementsByClassName(“123”);div是大多数html文档中非常常见的标记名,可能是您使用了错误的div我在ubot studio中使用它,并且我添加了两个条件来查找确切的div我们能从get元素中选择css吗?var objDiv=document.querySelector(“div[style=“style=”flex direction:column;“]”);objDiv[0].scrollTop=objDiv[0].scrollHeight;
我尝试过这个,但它对我无效querySelector
返回单个元素,所以不要使用[0]
索引器。另外,您的选择器中也重复了样式。它可能应该是document.querySelector(“div[style='flex-direction:column;'])
。不建议使用此方法,因为div的样式可能会更改。没有问题,我可以一次一次地更改样式。问题是它不起作用,我也尝试了此代码var objDiv=document.getElementsByTagName(“div[style=flex direction]”;objDiv[0]。scrollTop=objDiv[0].scrollHeight;
您使用的是getElementsByTagName
而不是不支持选择器的querySelector
。要清楚,您应该使用的是var objDiv=document.querySelector(“div[style='flex-direction:column;']);objDiv.scrollTop=objDiv.scrollHeight;
您的div标签html到底是什么样子的?我看到它适用于此演示,但不适用于我正在进行的Instagram。不过,我附上了我试图滚动的屏幕截图,以便您可以在控制台中尝试并更好地理解它
var objDiv = document.getElementsByClass("123");
objDiv[0].scrollTop = objDiv[0].scrollHeight;
var divs = document.getElementsByTagName("div");
for (let div of divs) {
if (div.style.overflow.includes("auto")) {
div.scrollTop = div.scrollHeight;
// break if you only want the first match
// break;
}
}
document.querySelector("#popup_div_id div");