Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何防止自定义全屏重置滚动位置?_Javascript_Html_Css_Scroll - Fatal编程技术网

Javascript 如何防止自定义全屏重置滚动位置?

Javascript 如何防止自定义全屏重置滚动位置?,javascript,html,css,scroll,Javascript,Html,Css,Scroll,我正在创建一个带有卡片的网页,这些卡片显示的信息类似于facebook,我通过将类更改为使用模拟全屏的css添加了一个自定义全屏,如下所示 .full-screen { z-index: 9999; width: 100%; height: 100%; position: fixed; top: 0; left: 0; background-color: white; margin: 0; padding: 0; } 但是,我注意到,当卡片处于全屏模式时,背

我正在创建一个带有卡片的网页,这些卡片显示的信息类似于facebook,我通过将类更改为使用模拟全屏的css添加了一个自定义全屏,如下所示

.full-screen {
  z-index: 9999;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: white;
  margin: 0;
  padding: 0;
}
但是,我注意到,当卡片处于全屏模式时,背景容器不再有滚动条,因为没有任何内容溢出页面。因此,当我将卡片设置为常规大小时,滚动条会重置为顶部。是否有其他方法可以防止这种情况发生?

在将卡设置为全屏之前,请使用element.scrollTop属性获取滚动位置,然后在将卡恢复为正常大小后使用该值设置scollTop属性

var top = 0;
function getScrollPosition(){ //call this function before setting card to fullscreen
  top = document.getElementById("container").scrollTop;//make sure you give the background container an id
}
function setScrollPosition(){ //call this function after returning card to normal size
  document.getElementById("container").scrollTop = top;
}