转载:Javascript自动将页面滚动到指定位置

本文转自: http://www.phpfuns.com/scripts/javascript/javascript-auto-scroll.shtml

 

昨天一个朋友问我如何在页面加载完成后,自动将页面定位到某个位置,当时有些忙,就没来得及解决。殊不知今天在做PHP教程的项目中也有了同样的需求:为了页面美观,需要只显示用户从楼盘相册点击后进入的相册幻灯页面的楼盘信息(也就是自动定位到了楼盘的相关信息,忽略了顶部banner)。如下图所示:

使用Javascript自动将页面滚动到指定位置

下面我们就来讲解一下如何使用Javascript自动将页面滚动到指定位置。

指定需要滚动的位置

这一步很简单,就是需要给滚动到指定位置的元素加上id属性,如下:

<span id="title" class="title">天一广场</span>

使用Javascript自动将页面滚动到指定位置

脚本如下:

<script type=”text/javascript”>
$(function(){
    window.location.hash = "#title";
})
</script>

这就完成了我们的需求,经测试兼容所有主流浏览器。

我也查阅了网上的一些资料,有的朋友说还有如下方式实现:

<script type="text/javascript">
function scrollwin() {
var scroll_y = parseInt(1000);
window.scrollBy(0, scroll_y);
}
</script>

我也对上面的方法进行了测试,发现使用javascript中的window.scrollBy()存在一个问题:每刷新一次页面,滚动距离顶部的高度都会比上次递增我们定义的scroll_y值。

所以还是建议大家使用window.location.hash方法来自动将页面滚动到指定位置。

 

window.location 对象属性介绍:

Location 对象属性

属性         描述    IEFO
hash设置或返回从井号 (#) 开始的 URL(锚)。419
host设置或返回主机名和当前 URL 的端口号。419
hostname设置或返回当前 URL 的主机名。419
href设置或返回完整的 URL。419
pathname设置或返回当前 URL 的路径部分。419
port设置或返回当前 URL 的端口号。419
protocol设置或返回当前 URL 的协议。419
search设置或返回从问号 (?) 开始的 URL(查询部分)。419

 

Location 对象方法

属性描述IEFO
assign()加载新的文档。419
reload()重新加载当前文档。419
replace()用新的文档替换当前文档。419

 

 

History 对象

History 对象包含用户(在浏览器窗口中)访问过的 URL。

History 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问。

History 对象属性

属性描述IEFO
length返回浏览器历史列表中的 URL 数量。419

History 对象方法

方法描述IEFO
back()加载 history 列表中的前一个 URL。419
forward()加载 history 列表中的下一个 URL。419
go()加载 history 列表中的某个具体页面。419

 

History 对象描述

History 对象最初设计来表示窗口的浏览历史。但出于隐私方面的原因,History 对象不再允许脚本访问已经访问过的实际 URL。唯一保持使用的功能只有 back()forward() 和 go() 方法。

 

转载于:https://www.cnblogs.com/zjfazc/archive/2012/10/12/2721436.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值