求助:如何让页面一打开就可以自己向下滚动(内详)

baggiointer 2013-08-08 03:37:47
1.有一个很长的页面,需要一打开这个页面就自动向下滚动

2.在滚动过程中,用户点击滚动条或其他地方,滚动事件能够马上停止。我的导航条是始终悬浮在屏幕顶部的,锚链接都是链接的这一个页面的不同地方,所以我希望在页面滚动过程中,点击导航链接能跳转过去,或者用户不喜欢页面自己滚动可以自己拖动滚动条去自己想看的地方。我网上找的页面自动滚动的效果,在滚动到页面底部之前,都没办法停下来或点击链接

3.如果可以的话,希望可以在第一次滚动到页面底部之后,能够自动跳转到页面顶部,并不在滚动了(除非刷新),这一条不是很重要,能做到最好,实现不了也没关系


另外还有个小问题,这论坛积分有没有好的办法获得啊?比如购买什么的,我平时比较忙,所以不大经常来论坛赚积分
...全文
626 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
w1016910519 2014-10-21
  • 打赏
  • 举报
回复
原来如此!------------------------ 回帖就是十积分啊!
baggiointer 2013-08-09
  • 打赏
  • 举报
回复
引用 9 楼 showbo 的回复:
忘记xhtml了,改成下面的就行了,back或者css1都可以了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<div style="height:1000px"></div>
<script>
    var timer, scrollHeight, viewHeight, step = 20, sTop = 0,isScrict=document.compatMode=='CSS1Compat';
    document.onclick = function () { clearInterval(timer); }
    function Move() {
        //设置滚动前获取当前的的滚动高度和sTop比较,如果小于sTop或者和sTop的差距大于step定义的,说明拖拽过滚动条了
        var nowScrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
        if (nowScrollTop < sTop || (nowScrollTop - top > step)) clearInterval(timer);
        sTop += step;
        document.documentElement.scrollTop = document.body.scrollTop = sTop;
        if (sTop + viewHeight > scrollHeight) {//滚动到底部
            clearInterval(timer);
            document.documentElement.scrollTop = document.body.scrollTop = 0//跳转到顶部
        }
    }
    window.onresize = function () {
        viewHeight = document[isScrict?'documentElement':'body'].clientHeight;
        scrollHeight = document[isScrict?'documentElement':'body'].scrollHeight;
    }
    window.onload = function () {
        window.onresize();
        timer = setInterval(Move, 100);
    }
</script>
非常感谢,都符合我的要求了,不过我加了一段控制导航浮动的js之后,页面在滚动到最底部之后不会自动返回顶部了,应该是这两段js略有冲突吧? function tools(){ var top=$(document).scrollTop(); if(($.browser.msie==true)&&($.browser.version==6.0)){ if(top>168)$("#box1_1").css({position:"absolute",top:top-168}); }else{ if(top>168)$("#box1_1").css({position:"fixed",top:0}); } if(top<=168)$("#box1_1").css({position:"static",top:0}); } $(function(){ window.onscroll=tools; window.onresize=tools; }); </script>
Go 旅城通票 2013-08-09
  • 打赏
  • 举报
回复
忘记xhtml了,改成下面的就行了,back或者css1都可以了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<div style="height:1000px"></div>
<script>
    var timer, scrollHeight, viewHeight, step = 20, sTop = 0,isScrict=document.compatMode=='CSS1Compat';
    document.onclick = function () { clearInterval(timer); }
    function Move() {
        //设置滚动前获取当前的的滚动高度和sTop比较,如果小于sTop或者和sTop的差距大于step定义的,说明拖拽过滚动条了
        var nowScrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
        if (nowScrollTop < sTop || (nowScrollTop - top > step)) clearInterval(timer);
        sTop += step;
        document.documentElement.scrollTop = document.body.scrollTop = sTop;
        if (sTop + viewHeight > scrollHeight) {//滚动到底部
            clearInterval(timer);
            document.documentElement.scrollTop = document.body.scrollTop = 0//跳转到顶部
        }
    }
    window.onresize = function () {
        viewHeight = document[isScrict?'documentElement':'body'].clientHeight;
        scrollHeight = document[isScrict?'documentElement':'body'].scrollHeight;
    }
    window.onload = function () {
        window.onresize();
        timer = setInterval(Move, 100);
    }
</script>
baggiointer 2013-08-09
  • 打赏
  • 举报
回复
引用 7 楼 showbo 的回复:
firefox12,ie7,8,chrome都没有问题,测试过的,你什么浏览器
哦哦,我知道了,你的这段代码如果加上 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> 就不起作用了,能不能让他符合这个标准啊?
Go 旅城通票 2013-08-09
  • 打赏
  • 举报
回复
firefox12,ie7,8,chrome都没有问题,测试过的,你什么浏览器
baggiointer 2013-08-09
  • 打赏
  • 举报
回复
引用 3 楼 showbo 的回复:
<div style="height:1000px"></div>
<script>
    var timer, scrollHeight, viewHeight, step = 20, sTop = 0;
    document.onclick = function () { clearInterval(timer); }
    function Move() {
        //设置滚动前获取当前的的滚动高度和sTop比较,如果小于sTop或者和sTop的差距大于step定义的,说明拖拽过滚动条了
        var nowScrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
        if (nowScrollTop < sTop || (nowScrollTop - top > step)) clearInterval(timer);
        sTop += step;
        document.documentElement.scrollTop = document.body.scrollTop = sTop;
        if (sTop + viewHeight > scrollHeight) {//滚动到底部
            clearInterval(timer);
            document.documentElement.scrollTop = document.body.scrollTop = 0//跳转到顶部
        }
    }
    window.onresize = function () {
        viewHeight = document.body.clientHeight;
        scrollHeight = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);
    }
    window.onload = function () {
        window.onresize();
        timer = setInterval(Move, 100);
    }
</script>
呃,你的这段代码没作用啊
Go 旅城通票 2013-08-09
  • 打赏
  • 举报
回复
不要覆盖原来的onresize,改成这样,因为在onload中调用 window.onscroll获取视窗和滚动高作为是否滚动到页脚的代码
//window.onscroll=tools;
//window.onresize=tools;
//===>
$(window).bind({scroll:tools,resize:tools})
为了那份宁静 2013-08-08
  • 打赏
  • 举报
回复
Go 旅城通票 2013-08-08
  • 打赏
  • 举报
回复
至于论坛积分,你可以联系下管理员看看,换点¥让他们给你充值别。。
Go 旅城通票 2013-08-08
  • 打赏
  • 举报
回复
<div style="height:1000px"></div>
<script>
var timer, scrollHeight, viewHeight, step = 20, sTop = 0;
document.onclick = function () { clearInterval(timer); }
function Move() {
//设置滚动前获取当前的的滚动高度和sTop比较,如果小于sTop或者和sTop的差距大于step定义的,说明拖拽过滚动条了
var nowScrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
if (nowScrollTop < sTop || (nowScrollTop - top > step)) clearInterval(timer);
sTop += step;
document.documentElement.scrollTop = document.body.scrollTop = sTop;
if (sTop + viewHeight > scrollHeight) {//滚动到底部
clearInterval(timer);
document.documentElement.scrollTop = document.body.scrollTop = 0//跳转到顶部
}
}
window.onresize = function () {
viewHeight = document.body.clientHeight;
scrollHeight = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);
}
window.onload = function () {
window.onresize();
timer = setInterval(Move, 100);
}
</script>
baggiointer 2013-08-08
  • 打赏
  • 举报
回复
引用 1 楼 showbo 的回复:
每天回个帖就有10分了
时间上没那么充足....
Go 旅城通票 2013-08-08
  • 打赏
  • 举报
回复
每天回个帖就有10分了
vf6.0,要考二级没系统的下哈 Microsoft Visual FoxPro 6.0 for Windows 的常见问题 这些是有关 Microsoft Visual FoxPro 最常见的问题。在您求助 Microsoft 产品支持服务之前,请先查阅这张列表。 若想打印这些附注,请从“文件”菜单中选择“打印”命令。此文档分为以下四部分: --------------------------------------------------------------------- 部分 1. 技术支持与市场 部分 2. Visual FoxPro 6.0 新增功能 部分 3. 从其他版本的 FoxPro 和 Visual FoxPro 中移植 部分 4. Visual FoxPro 常见问题 --------------------------------------------------------------------- 部分 1. 技术支持与市场 问题 1-1: 从何处可以获得产品的更新版本? 答案: 在 Visual FoxPro 的 Web 站点上即可获得产品的更新信息,其中包括有关 Service Pack 和更新的示例、向导及其他代码的信息,该站点的网址为: www.microsoft.com/vfoxpro 请定期查看该网站,以便下载产品的最新版本。 问题 1-2: 从何处可以得到有关 Visual FoxPro 的详细资料? 答案: 通过 Microsoft Visual FoxPro Web 站点是随时获得各种最新产品发布信息的最佳途径。在此站点上不仅有新的产品公告,而且还提供了产品的更新信息、技术文章、白皮书、专业开发人员设计的优秀示例、会议公告、以及与其他许多 FoxPro web 站点的各种链接。 问题 1-3: 如何获得技术支持,以及如何报告软件错误? 答案: Microsoft Visual FoxPro Web 站点已经链接到了多种联机支持选项,其中包括覆盖面广阔的有关所有产品 Microsoft Knowledge Base(Microsoft 知识库)。您还可以阅读一份有关常见问题的清单。除联机支持之外,还可以直接通过电话获得技术支持。“帮助”菜单中的选项可列出技术支持的电话号码。这些电话号码也可用于报告产品中的错误。 问题 1-4. 什么是 Knowledge Base?如何使用它? 答案: Knowledge Base 是内容广泛的论文集,覆盖了如何使用产品的各种特性、已知的软件错误及其解决方案或回避的方法、以及其他有助于使用各种 Microsoft 产品的有用信息。通过以下站点可访问整个 Knowledge Base: support.microsoft.com 问题 1-5: 是否会有 Visual FoxPro 6.0a? 答案: Microsoft 公司一向承诺为用户提供高质量的产品。如果确实需要,我们将提供 Visual FoxPro 6.0 的错误修订版。但是,修订版不会使用 6.0a 版的形式。Visual FoxPro 6.0 中任何错误的修正都将包含在 Visual Studio Service Pack 中。同时还会在 Visual FoxPro 的 www.microsoft.com/vfoxpro 或 Visual Studio 的www.microsoft.com/vstudio 的 Web 站点上发布修订公告。 问题 1-6: Microsoft 公司为应用程序的开发提供了一些优秀的解决方案。怎样才能知道应该向客户推荐和使用哪种产品? 答案: 在选择适用某项任务的产品时,需要考虑多方面的因素。Microsoft Visual FoxPro web 站点上有一份优秀的策略背景论文,它比较了 Visual FoxPro、Visual Basic、SQL Server 和 Access 等 Microsoft 产品之间的不同。 问题 1-7: 哪里可以找到 Visual FoxPro 的使用示例? 答案: Visual FoxPro 6.0 产品中带有丰富的示例,其中有一些是针对 6.0 版特有功能的新示例。与 Visual FoxPro 以前的版本不同,这些示例将与所有 Visual Studio 示例安装在一起。您必须运行 MSDN Library 的“自定义”安装来安装这些示例。在 Visual FoxPro 中可使用新的 HOME(2) 函数方便地找到已安装示例的位置。 除了产品中所自带的示例外,Microsoft Visual FoxPro web 站点还将经常提供新的示例。

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧