边栏层滚动运动缓存

边栏层滚动运动缓存

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>側边滚动运动</title>
        <style type="text/css">
			#div1 {
				width: 100px;
				height: 100px;
				position: absolute;
				background: green;
				right: 0px;
			}
			body {
				height: 1000px;
			}

        </style>
    </head>

    <script  type="text/javascript">
        window.onload = function() {

            document.onscroll = function() {
                var oDiv1 = document.getElementById("div1");
                var iScrollTop = document.documentElement.scrollTop || document.body.scrollTop;
                var iClientHeight = document.documentElement.clientHeight || document.body.clientHeight;
                var i = iScrollTop + (iClientHeight - oDiv1.offsetHeight) / 2;
                //oDiv1.style.top = iScrollTop + (iClientHeight - oDiv1.offsetHeight) / 2 + "px";
                // oDiv1.innerHTML = iScrollTop + (iClientHeight - oDiv1.offsetHeight) / 2 + "px";
                startMove(oDiv1, parseInt(i));//paserInt是防止抖动,目标点取整
            };

            var oTimer = null;
            function startMove(obj, iTarget) {
                clearInterval(oTimer);

                oTimer = setInterval(function() {
                      //速度
                    var iSpeed = (iTarget - obj.offsetTop) /8;
                    iSpeed = iSpeed > 0 ? Math.ceil(iSpeed) : Math.floor(iSpeed);
                    //速度取整
                    if (obj.offsetTop == iTarget) {
                        clearInterval(oTimer);
                    } else {
                        obj.style.top = obj.offsetTop + iSpeed + "px";//层运动
                    };
                }, 30);
            };
        };
    </script>
    <body>
        <div id="div1">

        </div>
    </body>
</html>

版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116918.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JAVA(计算机编程语言)

    JAVA(计算机编程语言)走进JAVA//公共的类类名:要求与文件保持一致,每一个单词首字母大写publicclassHelloWorld{//类的开始 //公共的静态的没有返回值类型的主方法()->参数列表 publicstaticvoidmain(String[]args){//方法的开始 //系统输出打印()->内容””中的内容原封不动显示->字符串 System.out.println(“HelloWorld!!!”);//;结束语句

    2022年7月8日
    28
  • 解决:java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider

    解决:java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider控制台报错:java.lang.NoSuchMethodException:tk.mybatis.mapper.provider.base.BaseSelectProvider.&lt;init&gt;()浏览器访问:http://localhost:8081/category/list?pid=0解决办法:应该导入importtk.mybatis…

    2022年6月15日
    37
  • anaconda安装python模块_保姆号必须一个区

    anaconda安装python模块_保姆号必须一个区Python固然通俗优雅,适合新手入门,但其有两个痛点:依赖网复杂、包管理混乱,为了更好地管理Python库,引入Anaconda。本文介绍Anaconda全套配置流程与工作中常用的命令速查表,提升开发效率

    2022年10月21日
    2
  • scaleType详解

    scaleType详解scaleType详解

    2022年6月16日
    43
  • 【C/C++】C语言特性总结

    【C/C++】C语言特性总结已经有大约半年的时间没有碰C语言了,当时学习的时候记录了很多的笔记,但是都是特别混乱,后悔那个时候,不懂得写博客,这里凭借记忆和零零散散的笔记记录,尝试系统性地复习一下C语言。之前都是在Windows环境下学习,这次把重心放在Linux环境下,这次的复习源于基础,但是要高于基础。文章目录工具gcc编译器VS2019C语言编译过程C语言代码主体必要内容C语言数据类型关键字常量变量进制表示s…

    2022年6月21日
    16
  • 表单验证

    表单验证

    2021年9月18日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号