Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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 滚动移动Div_Javascript_Html_Vertical Scrolling - Fatal编程技术网

Javascript 滚动移动Div

Javascript 滚动移动Div,javascript,html,vertical-scrolling,Javascript,Html,Vertical Scrolling,当滚动条移动时,我必须移动一个div,但需要使用纯javascript,而position:fixed将不适用于布局。div的原始位置是相对于其他对象的。是否有一个简单的实现,使用和onScroll之类的事件来检测页面上下移动了多少像素,并相应地更改div的位置。div只需要垂直移动。因此,如果我能检测到页面移动了多少像素,我可以在div的位置加上或减去这些像素。非常感谢您的帮助:-) 所以你现在拥有的是。。。(这是你粘贴到目前为止所做的代码片段的地方)你太棒了:-)在我尝试的每个浏览器中都能完

当滚动条移动时,我必须移动一个div,但需要使用纯javascript,而position:fixed将不适用于布局。div的原始位置是相对于其他对象的。是否有一个简单的实现,使用和onScroll之类的事件来检测页面上下移动了多少像素,并相应地更改div的位置。div只需要垂直移动。因此,如果我能检测到页面移动了多少像素,我可以在div的位置加上或减去这些像素。非常感谢您的帮助:-)

所以你现在拥有的是。。。(这是你粘贴到目前为止所做的代码片段的地方)你太棒了:-)在我尝试的每个浏览器中都能完美地工作。非常感谢您的帮助。@Jake首先它必须是您的_div.style.top(代码中缺少样式)不是吗?而且这只会移动一次div,而不是滚动。如果我错了,请纠正我!用
你的div.style.top
替换
你的div.top
这个代码似乎很好用,但我很好奇,为什么没有花括号?
window.onscroll = function (e) {
  var vertical_position = 0;
  if (pageYOffset)//usual
    vertical_position = pageYOffset;
  else if (document.documentElement.clientHeight)//ie
    vertical_position = document.documentElement.scrollTop;
  else if (document.body)//ie quirks
    vertical_position = document.body.scrollTop;

  var your_div = document.getElementById('some_div');
  your_div.top = (vertical_position + 200) + 'px';//200 is arbitrary.. just to show you could now position it how you want
}