<html>

<head>

<style>

html锚点定位iehtml 页面内锚点定位及跳转办法总结 NoSQL

div {

height: 800px;

width: 400px;

border: 2px solid black;

}

h2 {

position: fixed;

margin:50px 500px;

}

</style>

</head>

<body>

<h2>

<a href=\公众#div1\"大众>to div1</a>

<a href=\"大众#div2\"大众>to div2</a>

<a href=\公众#div3\"大众>to div3</a>

</h2>

<div id=\"大众div1\"大众>div1</div>

<div id=\公众div2\公众>div2</div>

<div id=\公众div3\"大众>div3</div>

</body>

</html>

这种方法的缺陷是点击锚点之后,浏览器的URL会发生变革,如果刷新可能会涌现问题。

第二种方法是在js事宜中通过window.location.hash=\"大众divId\公众跳转,但地址也会发生变革,觉得跟第一种方法没差异,乃至更麻烦。
第三种方法是用animate属性,当点击锚点后,页面滚动到相应的DIV。
接着上面的代码,详细添加如下代码:

<script type=\"大众text/javascript\公众 src=\"大众http://code.jquery.com/jquery-1.8.0.min.js\"大众></script>

<script type=\"大众text/javascript\公众>

$(document).ready(function() {

$(\"大众#div1Link\公众).click(function() {

$(\"大众html, body\"大众).animate({

scrollTop: $(\公众#div1\"大众).offset().top }, {duration: 500,easing: \公众swing\"大众});

return false;

});

$(\"大众#div2Link\"大众).click(function() {

$(\公众html, body\公众).animate({

scrollTop: $(\"大众#div2\"大众).offset().top }, {duration: 500,easing: \"大众swing\"大众});

return false;

});

$(\公众#div3Link\"大众).click(function() {

$(\"大众html, body\"大众).animate({

scrollTop: $(\"大众#div3\"大众).offset().top }, {duration: 500,easing: \"大众swing\公众});

return false;

});

});

</script>

把稳:运行上面的脚本的之前,先将为锚点增加相应的id,同时去掉href属性。

$(\"大众html, body\公众)可以更换为相应的div,如果不起浸染,试着给该div增加overflow:scroll属性。

其余,脚本可以进一步优化,自己来试试

这样做的好处是:URL地址不会变,同时点击锚点时会自动相应scroll事宜,不须要重新绑定。

缺陷是:如果页脸庞杂的话,偏移值可能会发生变革须要算法赞助。

第四种方法是用js的srollIntoView方法,直接用:

document.getElementById(\"大众divId\"大众).scrollIntoView();

比如:

document.querySelector(\公众#roll1\"大众).onclick = function(){

document.querySelector(\公众#roll1_top\"大众).scrollIntoView(true);

}

这里便是点击id是#roll1的元素可以滚动到id是#roll1_top的地方,这里的#roll1和#roll1_top最好是逐一对应的,

这种方法的好处,是URL不会变,同时能够相应相应的scroll事宜,不须要算法什么的。
代码如下:

<html>

<head>

<title>HTML5_ScrollInToView方法</title>

<meta charset=\"大众utf-8\公众>

<script type=\"大众text/javascript\"大众>

window.onload = function(){

/

如果滚动页面也是DOM没有办理的一个问题。
为理解决这个问题,浏览器实现了一下方法,

以方便开拓职员如何更好的掌握页面的滚动。
在各种专有方法中,HTML5选择了scrollIntoView()

作为标准方法。

scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗口或某个容器元素,

调用元素就可以涌如今视窗中。
如果给该方法传入true作为参数,或者不传入任何参数,那么

窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。
如果传入false作为参数,调用元素

会尽可能全部涌如今视口中(可能的话,调用元素的底部会与视口的顶部齐平。
)不过顶部

不一定齐平,例如:

//让元素可见

document.forms[0].scrollIntoView();

当页面发生变革时,一样平常会用这个方法来吸引用户把稳力。
实际上,为某个元素设置焦点也

会导致浏览器滚动显示得到焦点的元素。

支持该方法的浏览器有 IE、Firefox、Safari和Opera。

/

document.querySelector(\"大众#roll1\"大众).onclick = function(){

document.querySelector(\"大众#roll_top\"大众).scrollIntoView(false);

}

document.querySelector(\公众#roll2\公众).onclick = function(){

document.querySelector(\"大众#roll_top\公众).scrollIntoView(true);

}

}

</script>

<style type=\公众text/css\公众>

#myDiv{

height:900px;

background-color:gray;

}

#roll_top{

height:900px;

background-color:green;

color:#FFF;

font-size:50px;

position:relative;

}

#bottom{

position:absolute;

display:block;

left;0;bottom:0;

}

</style>

</head>

<body>

<button id=\"大众roll1\"大众>scrollIntoView(false)</button>

<button id=\公众roll2\"大众>scrollIntoView(true)</button>

<div id=\"大众myDiv\公众></div>

<div id=\"大众roll_top\"大众>

scrollIntoView(ture)元素上边框与视窗顶部齐平

<span id=\"大众bottom\"大众>scrollIntoView(false)元素下边框与视窗底部齐平</span>

</div>

</body>

</html>

个人建议利用第四种方法。