2016-03-04 193 views
1

该代码包含一个div,它应该滚动到内部的一个特殊的id。我试过这段代码,但它并没有完全滚动,也没有引发错误。如何滚动到div内的ID?

var divToHighlight = document.getElementById(mID); 
 
divToHighlight.style.backgroundColor ="#F5F0C9"; 
 
var topPos = divToHighlight.offsetTop; \t 
 
document.getElementById("My-Div").scrollTop = topPos;

我还检查该post但我不明白,为什么我的代码不能正常工作。

回答

1

你可能要滚动的父元素,而不是你的股利。像这样的东西会奏效。

var divToHighlight = document.getElementById(mID); 
divToHighlight.style.backgroundColor ="#F5F0C9"; 
var topPos = divToHighlight.offsetTop; 
divToHighlight.parentElement.scrollTop = topPos; 

看到它在这里工作:https://jsfiddle.net/igor_9000/L6bvwg20/1/

希望帮助!

+0

我想在div内滚动。该mID是Div应该达到Div顶部的一个元素。其实我没有问题,当我的数据是在体内,但我不得不把它放在一个滚动Div。但是这个现在不起作用。 – Adi

+0

Derp,lemmie编辑... –

+0

@adonis我更新了滚动父div,而不是正文的答案。 –