解决iframe内使用scrollIntoView导致外部父元素也滚动的问题

  • Post author:
  • Post category:其他




功能场景:

解决

iframe内

使用

scrollIntoView

导致外部父元素也滚动的问题

滚动原因:

使用原生的 element.scrollIntoView() 时,会同时使 element 所在容器也会进行 scrollIntoView 操作,特别当 elment 为处于 iframe 中的一个元素,则当调用 element.scrollIntoView() ,不但使得 iframe 内的窗口滚动到 element 所在处,同时也会使主窗口滚动到 iframe 处




实现代码:


解决思路

:外部设置监听,如果监听到滚动,则回到顶部。(此种方法算是曲线救国,根本上无法阻止scrollIntoView引起外部滚动,但是可以用户无感知的情况下的回到顶部)


实现代码

:

    mounted() {
      window.onscroll = function () {
        window.scrollTo(0, 0);
      };
    },

另外也可参考博主的重写scrollIntoView方法,参考链接:

SCROLLINTOVIEW 实现



版权声明:本文为qq_40567849原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。