Javascript 如何防止在用户“退出”时显示屏幕外的内容;拖拽;鼠标穿过查看区域?

Javascript 如何防止在用户“退出”时显示屏幕外的内容;拖拽;鼠标穿过查看区域?,javascript,css,Javascript,Css,我在body标签上使用了“overflow:hidden”,它隐藏了滚动条,但这并不能阻止用户在拖动到浏览窗口的底部或右侧边缘时单击并拖动鼠标以显示外部内容。以下是网站: 要复制行为,一种方法(在Chrome中)是按下鼠标中键并向下或向右拖动。在IE9中,抓取菜单按钮并将其拖动到边缘 是否有一种应用程序范围的方法来防止这种情况发生,或者是否有一个属性或事件调用我必须在每个元素上重新编写?我的第一个想法是使用CSS clip属性,并通过javascript更改它以匹配身体的可见部分…我的第一个想

我在body标签上使用了“overflow:hidden”,它隐藏了滚动条,但这并不能阻止用户在拖动到浏览窗口的底部或右侧边缘时单击并拖动鼠标以显示外部内容。以下是网站:

要复制行为,一种方法(在Chrome中)是按下鼠标中键并向下或向右拖动。在IE9中,抓取菜单按钮并将其拖动到边缘


是否有一种应用程序范围的方法来防止这种情况发生,或者是否有一个属性或事件调用我必须在每个元素上重新编写?

我的第一个想法是使用CSS clip属性,并通过javascript更改它以匹配身体的可见部分…

我的第一个想法是使用CSS clip属性,并通过javascript将其更改为与身体的可见部分相匹配…

您可以添加一个计时器循环,该循环会不断返回(0,0)


您可以添加一个不断返回(0,0)的计时器循环


尝试将用作剪切元素的元素上的
溢出-x
溢出-y
CSS属性设置为
“隐藏”

overflow-x:hidden;
overflow-y:hidden;

尝试将用作剪切元素的元素上的
溢出-x
溢出-y
CSS属性设置为
“隐藏”

overflow-x:hidden;
overflow-y:hidden;

我似乎无法让CSS剪辑与body标记一起工作。我需要在离开主体区域的每个滑动元素上使用它吗?不,用一个类似主体的div包围所有元素,并在这个div上应用CSS的剪裁规则。你还需要使用一些javascript来更新它的高度+宽度和剪辑属性。我需要在离开主体区域的每个滑动元素上使用它吗?不,用一个类似主体的div包围所有元素,并在这个div上应用CSS的剪裁规则。您还需要使用一些javascript来更新它的高度+宽度和剪辑属性。我将此添加到我的step函数中,它确实修复了它,副作用是显示旧的行为(并在拖动时来回切换)。我还尝试使用window.addEventListener('scroll',函数(e){e.preventDefault();},false),但没有成功。显然,scroll没有一个可取消的默认行为,这本来是很理想的。如果你实施了节流或去盎司,你应该能够修复闪烁。我将此添加到我的步进函数中,它确实修复了它,副作用是毫秒显示旧的行为(并在拖动时来回切换)。我还尝试使用window.addEventListener('scroll',函数(e){e.preventDefault();},false),但没有成功。显然,scroll没有一个可取消的默认行为,这本来是很理想的。如果你实施了节流或去盎司,你应该能够修复闪烁。