Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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_Google Chrome_Scroll_Mouseevent_Smooth Scrolling - Fatal编程技术网

Javascript 将鼠标滚轮事件从父对象传递给子对象

Javascript 将鼠标滚轮事件从父对象传递给子对象,javascript,google-chrome,scroll,mouseevent,smooth-scrolling,Javascript,Google Chrome,Scroll,Mouseevent,Smooth Scrolling,我在它的中心有一个大的父div和一个小div。 当我将鼠标滚轮滚动到子对象上时,它会按应有的方式滚动, 但我希望能够滚动那个子元素,即使鼠标不在它上面,但在父元素的某个地方,鼠标滚轮被滚动 我将事件从家长传递给孩子,如下所示: parent.addEventListener('mousewheel', parentMouseWheel); function parentMouseWheel(e) { if (e.target.id === 'parentId') { //to preven

我在它的中心有一个大的父div和一个小div。
当我将鼠标滚轮滚动到子对象上时,它会按应有的方式滚动,
但我希望能够滚动那个子元素,即使鼠标不在它上面,但在父元素的某个地方,鼠标滚轮被滚动

我将事件从家长传递给孩子,如下所示:

parent.addEventListener('mousewheel', parentMouseWheel);

function parentMouseWheel(e) {
  if (e.target.id === 'parentId') { //to prevent double events when mouse is over child
   if (e.wheelDelta > 0) child.scrollTop = child.scrollTop - 120;
    else  child.scrollTop = child.scrollTop + 120;
  }
}
这是可行的,但问题是,没有像我将鼠标滚轮滚动到孩子身上时那样平滑滚动(可能是因为像这样强制/通过)。
那么,是否有其他方法将鼠标滚轮事件传递给子对象,从而触发平滑滚动?

我正在设计我的扩展选项页面的样式,如果这意味着什么

我重拨了标签:它不是特定于分机的,急需达到预期的目标audience@Xan我改变了整个观念。我不得不把滚动条放在家长身上,因为平滑的滚动声。从未在子元素上触发(工作)。我重新定义了标记:它不是特定于扩展的,急需达到预期的目标audience@Xan我改变了整个观念。我不得不把滚动条放在家长身上,因为平滑的滚动声。从未在子元素上触发(工作)。