wudics返回页面顶部代码

preview
需积分: 0 0 下载量 84 浏览量 更新于2011-11-15 收藏 32KB DOC 举报
### 返回页面顶部的JavaScript技术详解 #### 一、引言 在现代Web开发中,为了提升用户体验,很多网站都会提供一种快速返回页面顶部的功能。这种功能不仅能够方便用户浏览长篇文档或文章,还能增强网站的专业性和友好度。本文将详细介绍三种实现返回页面顶部的方法:使用HTML锚标记、使用JavaScript `scroll` 函数以及使用`onload`事件结合`scroll`功能。 #### 二、使用HTML锚标记返回页面顶部 **原理简介:** HTML锚标记是一种非常简单且直接的方法,用于创建页面内部链接。这种方法主要是利用`<a>`标签的`href`属性指向页面中的某个锚点(`<a name="..." id="...">`)来实现快速定位。 **具体实现步骤:** 1. **在页面顶部设置锚点:** ```html <a name="top" id="top"></a> ``` 锚点通常放在页面顶部,`name`和`id`属性值可以根据需要自定义。 2. **在页面底部创建返回顶部链接:** ```html <a href="#top" target="_self">返回顶部</a> ``` 用户点击此链接后,浏览器会自动滚动至与`#top`匹配的锚点位置。 **优点与缺点:** - **优点:** 实现简单,无需额外脚本支持。 - **缺点:** 点击后会在地址栏显示锚点名称;对于移动端可能体验不佳。 #### 三、使用JavaScript Scroll函数返回顶部 **原理简介:** JavaScript的`scroll`函数可以控制浏览器滚动条的位置,从而实现平滑地返回顶部。 **实现方法1:直接滚动到顶部** ```html <a href="javascript:scroll(0,0)">返回顶部</a> ``` 其中,`scroll`的第一个参数表示水平滚动位置,第二个参数表示垂直滚动位置。如果希望定位到页面某个具体位置,可以调整这些参数。 **实现方法2:平滑滚动到顶部** 为了实现更加友好的用户体验,可以使用平滑滚动的方式。这种方法通过递归调用`scrollBy`函数实现。 ```html <script> function pageScroll() { window.scrollBy(0, -10); // 每次滚动向上10像素 scrolldelay = setTimeout('pageScroll()', 100); // 每隔100毫秒执行一次 if (document.documentElement.scrollTop == 0) { clearTimeout(scrolldelay); // 到达顶部后清除定时器 } } </script> <a href="javascript:pageScroll()">返回顶部</a> ``` **优点与缺点:** - **优点:** 平滑滚动效果更好,用户体验更佳。 - **缺点:** 需要编写额外的JavaScript代码。 #### 四、使用Onload加上Scroll功能实现动态返回顶部 **原理简介:** 这种方法结合了`onload`事件和`scroll`函数,可以在页面加载完成后动态显示“返回顶部”的按钮,并且在用户点击后平滑滚动回顶部。 **实现步骤:** 1. **在页面中加入按钮:** ```html <div id="gotop">返回顶部</div> ``` 2. **编写JavaScript代码:** ```javascript function BackTop(btnId) { var btn = document.getElementById(btnId); var d = document.documentElement; window.onscroll = set; btn.onclick = function () { btn.style.display = "none"; window.onscroll = null; this.timer = setInterval(function () { d.scrollTop -= Math.ceil(d.scrollTop * 0.1); if (d.scrollTop == 0) { clearInterval(btn.timer); window.onscroll = set; } }, 10); }; function set() { btn.style.display = d.scrollTop ? 'block' : "none"; } } BackTop('gotop'); ``` 3. **调用方法:** 如果使用Z-BLOG框架,可以将以上JavaScript代码放入`$(document).ready(function(){ ... })`函数中,或者独立存储为`.js`文件并通过`<script src="/js/gotop.js" type="text/javascript"></script>`引入。 **优点与缺点:** - **优点:** 动态显示按钮,用户体验更好;代码复用性高。 - **缺点:** 相对前两种方法更为复杂,需要更多JavaScript知识。 ### 总结 通过上述介绍,我们可以看出不同的返回顶部实现方式各有优劣。对于追求简洁和效率的项目,推荐使用HTML锚标记或简单的`scroll`函数;而对于注重用户体验的设计,则建议采用动态显示按钮的方法。开发者可以根据实际需求灵活选择最适合的技术方案。