2014-12-17 8 views
0

IFrame (Extjs 5 Component)에서 핀치 이벤트를 감지하고 싶습니다. 이 코드의 문제점은 무엇입니까 ??iFrame Extjs의 핀치 이벤트 5

Ext.create('Ext.ux.IFrame', { 
     autoScroll: true, 
     src: 'resources/docs/doc1.html', 
     cls: 'iframeStyle', 
     listeners: { 
      pinch: function (event) { 
       alert('event.scale= ' + event.scale); 
      } 
     } 
    }) 

답변

0

Ext.ux.Iframe에는 이벤트로 "핀치"가 없습니다. API에 나열된 이벤트 만 "리스너"구문을 사용하여 추가 할 수 있습니다.

Ext.create('Ext.ux.IFrame', { 
    autoScroll: true, 
    src: 'resources/docs/doc1.html', 
    cls: 'iframeStyle', 
    listeners: { 
     afterrender: function(container) { 
      container.addManagedListener(container.el, "touchstart", function (event) { 
       alert('event.scale= ' + event.scale); 
      }); 
     } 
    } 
}) 

코드는 안된하지만 addManagedListener 당신이 원하는 것 무엇 : http://docs.sencha.com/extjs/5.0/5.0.1-apidocs/#!/api/Ext.ux.IFrame

는 당신의 라인을 따라 뭔가를 원하는 것!

+0

당신은 당신이 쓴 코드에 약간의 오차가 있지만 여전히 :( 'Ext.create ('Ext.ux.IFrame', { 자동 스크롤 작동하지 : 사실, SRC : '자원/문서/doc1.html을 ' CLS'iframeStyle ' 수신기 { afterrender : 함수 (용기) { container.addManagedListener (container.el "핀치"함수 (이벤트) { 경보 ('event.scale = '+ 이벤트 .scale); }); } 나는이 코드를 Ipad 및 galaxy 탭에서 테스트했습니다. –

+0

아하, 내 코드가 틀렸어. exa를 업데이트 할게. m. 테스트 예제를 설정하고 "꼬집음"대신 "클릭"또는 "터치 시작"이벤트를 사용하면 문제가 없습니다. 청취자가 추가되는 방식이 변경되면 실제 이벤트가 변경 될 수도 있습니다. 불행하게도 ExtJS 지원을 위해 집게/확대/축소를 보니보기 좋지 않고 개발 팀 http://sencha.com/forum/showthread.php?287219에서 현재 고려하지 않고 있습니다. 네이티브 JS의 핀치 감지는 잘 지원되지 않습니다 (적어도 안드로이드에 대해서는 IOS에 대해'gesturestart'를 사용할 수 있습니다) –

+0

작동하지 않습니다 !! 나는 click 이벤트로 시도하고 크롬에서 "toggle device mode"로 시도했다 ... –