naver / hammer.js

A javascript library for multi-touch gestures :// You can touch this
http://hammerjs.github.io
MIT License
43 stars 11 forks source link

hammer.js #23

Closed joyholdgod closed 4 years ago

joyholdgod commented 4 years ago

Hi. hammer.js.

In MSIE webbrowser component, vis.js(chart opensource) not works propery. we found that the issue from hammer.js.

related link :

https://github.com/visjs/vis-network/issues/249

below texts are from the link.

MSIE webbrowser component doesn't dispatch pointer events which we listen to. However it dispatches mouse events which theoretically could be used instead. A little complication here is that we use Hammer.js to handle these things so it has to be fixed there. I therefore suggest that you open an issue on https://github.com/naver/hammer.js/issues/new and after it's solved and released there we can update Hammer.js here and everything will hopefully work just fine.

Thank you.

WoodNeck commented 4 years ago

Hello, @joyholdgod! If the pointer events are the problem here, there's an option to disable it in hammer.js. That can be done by giving an option with inputClass with value TouchMouseInput when creating a Manager instance.

import { Manager, TouchMouseInput } from "@naver/hammer.js";

// Suppose you have this version info..
if (IE_VERSION <= 10) {
  const manager = new Manager(someEl, {
    inputClass: TouchMouseInput
  });
}

If this won't work, please leave any example that can reproduce this issue so we can fix that :)

한국어로 질문하셔도 괜찮습니다 :) 그 경우 한국어 + 영어로 답변 드리겠습니다.

joyholdgod commented 4 years ago

감사합니다! vis.js쪽에 전달 후, 문제해결 진행이 안될시 다시 코멘트 드리겠습니다!~

joyholdgod commented 4 years ago

안녕하세요!~ 프리랜서 개발자입니다!

vis.js에서 아래와 같은 답변을 받았는데요.

https://github.com/visjs/vis-network/issues/249#issuecomment-558379905

제가 영어를 그렇게 막 잘하지는 않는데요. 제가 이해하기로는 vis.js에서 msie에서 제공하는 웹브라우저 컴포넌트에서 마우스 이벤트에서 클릭이나 드래그등이 안되는 부분이 hammer.js에서 pointer 관련된거로 인해서 hammer.js에서 해결이 되면 vis.js에서 적용한다고 이해했었는데요. 알려주신 방법을 vis.js쪽에 코멘트를 달았더니 도와줄수가 없다는 답변을 받아서요... 혹시 업데이트 예정은 없으신가요?.. 제가 영어를 그렇게 잘하지는 못해서 이해를 잘못했을수도 있을꺼는 같습니다..

감사합니다! 좋은 하루 보내세요!

WoodNeck commented 4 years ago

I've translated the message for you.

낮은 버젼의 IE에서, hammer.js를 수정할 경우 vis.js의 이벤트에 관련된 부분은 해결할 수 있지만, 라이브러리의 다른 부분들 중에 작동이 되지 않는 것들이 많을 것입니다. IE7이 특히나 문제입니다. 호환성 태그를 추가하거나 레지스터 조작도 소용 없을겁니다. User-agent에 IE7임을 표기하기까지 합니다. 심지어 글로벌에 window.JSON 같은 것이 정의되어 있지 않습니다. 죄송하지만, 저희가 지원하는 가장 낮은 버젼의 브라우저는 IE11입니다. 그러니, 크로미움 기반 혹은 최소 IE11/Edge 기반의 웹브라우저 컴포넌트로 변경하는 것을 추천드립니다.

So, I think you can try basically changing the web browser component you're using to more modern one. I don't know much about that subject, but I don't think fixing hammer.js can't help you in this situation.

Thanks.


제 생각엔 저쪽에서 가이드해주신대로 사용중인 웹브라우저 컴포넌트를 좀 더 모던한 브라우저 기반으로 교체해보시는게 좋을 것 같습니다 (크로미움 혹은 최소 Edge/IE11기반). 저는 웹브라우저 컴포넌트에 대해서는 잘 모르겠지만, 이 경우 hammer.js를 수정해서 해결될 문제 같진 않네요.

감사합니다.

joyholdgod commented 4 years ago

제가 뛰고 있는 프로젝트에서 투비소프트의 넥사크로를 사용중인데요. 넥사크로에서 사용하는 웹브라우저 컴포넌트가 ie7이라고 들었습니다. 문제가 일반웹 ie11에서 실행하면 정상작동하는데, 런타임모드라고 크롬 네이티브? 프로그램으로 실행을 했을때 문제가 발생했었습니다. 투비소프트쪽에서는 앞으로 웹브라우저컴포넌트 버전업 계획이 없다고 답변 받았었는데요...ㅠㅠ

결국 컴포넌트 버전업을 해야되겠군요... 그러나 버전업 계획이 없다고 하니 런타임모드로 사용은 불가능하게 되겠네요...

두서없이 말한거 같은데, 친절히 답변 해주셔서감사합니다!~ 좋은 하루 보내세요!~

WoodNeck commented 4 years ago

It's my pleasure to help :) I'll close the issue, feel free to open it whenever needed.


도움이 되었다니 다행입니다 :) 이슈는 닫아두도록 하겠습니다, 필요시 언제든지 다시 오픈해주세요.