zoukankan      html  css  js  c++  java
  • window.scrollTo()方法的无效问题

    this.$nextTick(() => {
            window.scrollTop(x, y)
    });

    这是使用方法但却无效!

    后来发现是HTML对象的问题:

    改为:

    this.$nextTick(() => {
    document.body.scrollTop(x, y) 

    });

    原因分析:

    html、body、document、window的区别

     

    html是一门超文本标记语言;

    document对象代表整个html文档,可用来访问页面中的所有元素;

    body代表document的主体子对象,除浏览器头部,页面中能够看到的内容都属于body中的内容;

    window代表浏览器中打开的窗口,代表运行环境。

    在javascript中:

    window对象是一个虚拟的对象,浏览器在打开HTML文档时生成window对象,可以把它看作是你所使用的浏览器的窗口,其地位很高,因为它是浏览器脚本引擎中的globalobject。可以用window对象访问窗口中绘制的文档、窗口中发生的事件和影响窗口的浏览器特性。如果文档定义一组帧,则浏览器对原文档生成一个window对象,并对每个帧生成window对象。(关于globalobject,可以从javascript脚本引擎的概念中了解到。)

    BOM的核心对象是window,它表示一个实例。在浏览器中,window对象有双重角色,它既是通过js访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象,它意味着在网页中定义的任何一个对象、变量和函数,都是以window作为其Global对象,因此有权访问isNaN()、isFinite()、parseInt()等方法。

    *html元素对象*和*document对象*和*document元素对象*都是不同的:

    document对象是一个跟当前文档相关的对象,拥有一些操作文档内容的功能,其功能上跟window对象差不多,因为window拥有一些操作浏览器窗口的功能。但是document对象地位没有window对象高,window拥有其他所有根对象的引用,包括browser、navigator、location等等。html元素对象和document元素对象是属于html文档的dom对象,可以认为就是html源代码中那些标签所化成的对象。他们跟div select什么对象没有根本区别。

  • 相关阅读:
    AudioToolbox学习(转)
    ios5键盘问题
    何时使用self.
    ios判断邮箱,手机号码,车牌号是否合法(正则表达)
    将图片重新绘制
    在UITableViewCell中获取所在的行数以及去除选中状态
    根据UIView获取其UIViewController
    在iOS中将string转成UTF8编码
    SQL提高性能
    oracle创建口令文件
  • 原文地址:https://www.cnblogs.com/braveLN/p/11550687.html
Copyright © 2011-2022 走看看