禁用网页滚动

今日改进网页菜单时发现正常情况下,在唤出原生菜单时,会禁用页面的滚动。为了模拟这一行为,有两种方案:一是设置overflow属性。这种情况下,当页面存在滚动条时,滚动条会消失,十分不美观。另一种十分暴力,直接记录当前滚动位置并暴力回滚。经测试在Chrome 74上完美实现禁用滚动效果。代码如下:

x = window.scrollX
y = window.scrollY
window.onscroll = function () {
    window.scrollTo(x, y)
}

自定义网站右键菜单

初中的时候,我接触过一个通过侦听oncontextmenu并计算元素位置的方法。在新的html5 contextmenu规范出来前,这个方案还是比较通用的.而且这个菜单可以是任意HTML元素,这就提供了很大的可定制空间,比如可以在菜单里放一个播放器(右键即可看到)。下面给出主要代码:

继续阅读“自定义网站右键菜单”