Posted in Javascript onMay 24, 2011
比如 想跳到 mao.aspx 的页面 的div id="s" 的位置 那么 只用<a href="mao.aspx#s"> 就可实现跳转到指定位置
现在为了增加用户体验 跳转到页面后 平滑移动到该位置 怎么做呢 其实也很简单啦 那边传递过来一个 要跳转到哪个div的参数就行
先上一段 页面获取参数的 通用js
//根据参数名获得该参数 pname等于想要的参数名 function getParam(pname) { var params = location.search.substr(1); // 获取参数 平且去掉? var ArrParam = params.split('&'); if (ArrParam.length == 1) { //只有一个参数的情况 return params.split('=')[1]; } else { //多个参数参数的情况 for (var i = 0; i < ArrParam.length; i++) { if (ArrParam[i].split('=')[0] == pname) { return ArrParam[i].split('=')[1]; } } } }
代码很简单 就是根据当前url 获取其中想要的参数的值
$(function() { var mao = $("#" + getParam("m")); //获得锚点 if (mao.length > 0) {//判断对象是否存在 var pos = mao.offset().top; var poshigh = mao.height(); $("html,body").animate({ scrollTop: pos-poshigh-30 }, 3000); } });
上面就是平滑移动到 想要的位置 pos-poshigh-30 这个是可以调整的 我是觉得减到30毕竟好~~
很简单的效果 不上代码例子了 自己写着玩~
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@