Bil*_*oon 37 html javascript css webkit electron
有没有办法在电子应用程序中禁用缩放缩放?
我无法使用正常的javascript方法在Web视图中工作,如下所述:https://stackoverflow.com/a/23510108/665261
我使用以下各种方法进行了实验:
event.preventDefault()关于javascript touchmove/mousemove事件meta viewport HTML中的标签-webkit-text-size-adjust 在CSS中对于webkit,或者特别是电子,有什么方法吗?
art*_*nik 24
更新2:
在渲染过程中使用webFrame.setZoomLevelLimits(v0.31.1 +)(主进程和渲染器进程之间的差异).因为mac上的智能缩放仍然可以使用document.addEventListener.
例 require('electron').webFrame.setZoomLevelLimits(1, 1)
更新:
deltaY用于缩放缩放的属性具有float值,但是正常的滚动事件返回int值.现在解决方案与ctrl键没有问题.
演示2.
document.addEventListener('mousewheel', function(e) {
if(e.deltaY % 1 !== 0) {
e.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
使用Chromium monitorEvents(document)我发现它负责此事件mousewheel.我不知道,为什么mousewheel用捏缩放触发.下一步,找出正常滚动和缩放缩放之间的差异.
捏缩放具有属性e.ctrlKey = true,而普通滚动事件具有e.ctrlKey = false.但是如果按住ctrl键并滚动页面,则e.ctrlKey相同true.
我找不到更好的解决方案.:(
document.addEventListener('mousewheel', function(e) {
if(e.ctrlKey) {
e.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)