fex-team / kityminder-editor

Powerful Mindmap Editing Tool
GNU General Public License v2.0
3.04k stars 864 forks source link

macOS按住command加滚轮缩放方向是反的 #932

Open tawangwuhen opened 3 years ago

tawangwuhen commented 3 years ago

因为用mac是普通鼠标为主,所以把滚动方向:自然给去掉勾选了,所以导致脑图上缩放的方向是反的,看能不能加个设置选项设置滚动方向

yanhaijing commented 2 years ago

mac 触摸板的缩放也是反的???

HengCC commented 1 year ago

我给个半解决方案吧,以下代码基本来自百度脑图库的zoom.js文件中对滚轮的监听操作... 之所以说是半解决. 是因为如果加了稀释动作. zoom操作就会失效. 因为看起来这个事件并未阻止 e.originEvent.preventDefault();, 如果不稀释那放大和缩小会很快.

minder.on('mousewheel', (e: any) => {
        if (/macintosh|mac os x/i.test(window.navigator.userAgent)) {
          if (!e.originEvent.ctrlKey && !e.originEvent.metaKey) return;
          let delta = e.originEvent.wheelDelta;
          delta = -delta;
          if (Math.abs(delta) > 100) {
            if (timeout) {
              clearTimeout(timeout.current);
            }
          } else {
            return;
          }
          timeout.current = setTimeout(() => {
            if (delta > 0) {
              minder.execCommand('ZoomOut');
            } else {
              minder.execCommand('ZoomIn');
            }
          }, 100);
          console.log('e.originEvent.preventDefault:', e.originEvent.preventDefault);
          e.originEvent.preventDefault();
        }
      });