2013-08-24 4 views
3

약 1 년 전에 kinetic.js을 사용하여 복잡한 캔버스 웹 응용 프로그램을 개발했습니다. 나는 사용했다 kinetic.js3.10.4. 버전 그리고 Google 크롬 및 Mozilla Firefox와 같은 최신 브라우저에서 내 응용 프로그램이 더 이상 작동하지 않는다는 것에 놀랐습니다. 예를 들어 Text 모양을 만드는 동안 오류가 발생했습니다.KineticJS 구 버전 작업

Uncaught TypeError: Type error 
Kinetic.Shape.Kinetic.Node.extend.fill 
config.drawFunc 
Kinetic.Shape.Kinetic.Node.extend._draw 
Kinetic.Container.Kinetic.Node.extend._drawChildren 
Kinetic.Layer.Kinetic.Container.extend._draw 
Kinetic.Layer.Kinetic.Container.extend.draw 
loadMenu 
_background.onload 

내가 4.6.0 버전를 사용하여 시도했지만 내 레거시 코드에 일부 사용되지 않는 기능과 특징이 있습니다 : 여기에 구글 크롬 디버거에서 스택 추적 오류입니다. 4.630 버전으로 업데이트하는 대신 내 현재 3.10.4 버전 라이브러리 (몇 가지 손쉬운 수정 포함)를 사용할 수 있는지 궁금합니다. 그렇게 할 수 있습니까? 미리 감사드립니다 :)

+0

어떤 비추천 기능이 필요합니까? Kinetic은 종종 기능을 추가하고 종종 메서드를 이동하지만 기능은 거의 제거하지 않습니다. Kinetic의 changelog를 점검하여 필요한 기능에 간단한 4.6 버전이 있는지 확인하십시오 : https://github.com/ericdrowell/KineticJS/wiki/Change-Log – markE

+0

'.transitionTo' 메소드가 더 이상 작동하지 않습니다. 현재 (3.10.4)'Text Shapes' .fill' 속성이 작동하지 않아 Chrome에서 'Uncaught TypeError'가 발생합니다. –

답변

1

예, 전환이 제거되고 Tweens 효과적인 KineticV4.5로 대체되었습니다.

트윈은 이전 전환과 유사하게 코딩됩니다.

따라서 Tween으로 전환하는 모든 기록은 간단합니다.

ChromeV26의 변경 사항이 채워 지므로 KineticV4.3 이하의 채우기가 작동하지 않습니다.

가능한 옵션 :

  • 는 채우기가 고정 및 전환이 여전히 존재 키네틱 버전 4.4을 사용해보십시오.
  • Transtions를 Tweens로 다시 코딩하고 현재 버전을 사용하십시오.
+0

고마워요. 이제는 Google 크롬 이전 버전에서'KineticJS'에서 사용한'.fill' 속성이 깨졌습니다. 그것은'.fill (context)'이었지만 이제는 매개 변수없이 단지'.fill()'입니다. 그런데 어떻게 Chrome에서 더 이상 지원되지 않는 코드가 있습니까? W3C의 표준이 아닌가? 어떤 기준이 그들에 의해 변경 되었습니까? 감사 :) –