链接到同一页上的段落

时间:2015-05-17 02:16:21

标签: javascript jquery html css

我已创建指向某个段落的链接。所以当我点击我的按钮时,我会转到同一页面上的段落。

按钮:

<a href="http://example.com/#paintings">Paintings</a>

链接到段落:

<a name="paintings"><h2>Paintings</h2></a>

我的问题是我想在点击链接后调整视图。 我真正想做的是:

  1. 点击按钮
  2. 转到段落
  3. 向下滚动40px
  4. 有没有一种简单的方法可以达到这个目的?

2 个答案:

答案 0 :(得分:1)

只需将<a name="paintings">更改为<a id="paintings">

<a id="paintings"><h2>Paintings</h2></a>

答案 1 :(得分:0)

我使用jQuery修复它。

var element = document.getElementById(page);
var rect = element.getBoundingClientRect();
var elementLeft,elementTop;
var scrollTop = element.scrollTop?
element.scrollTop:document.body.scrollTop;
elementTop = rect.top+(scrollTop);
var menuBar = $('#header').height();

$("html, body").animate({
    scrollTop: (elementTop -menuBar)
}, 1000 / 2);

这将使我的页面向下滚动到元素。他将在我的html中计算元素的高度,并减去菜单栏的高度。