2011-12-15 8 views
3

와 나는이 바이올린 내 모든 코드를 포함 시켰습니다.추가 캔버스 jquery 동적

두 번째 추가 버튼을 클릭 할 때마다 새 캔버스를 추가 할 수 있기를 원하지만 작동시키지 못합니다. 비슷한 코드가이 피들에서 작동합니다. http://jsfiddle.net/dzejkej/xwg5f/

광산이 작동하지 않는 이유는 알지 못합니다. 뭐가 잘못 됐는지 몰라. 도와주세요.

+0

를 지정하십시오. 코드에 도형을 추가하면 잘 작동합니다. – supertopi

+0

@ TopiOjala - 그것은 어떤 바이올린에서 작동 했습니까? 위 또는 아래? 내 문제는 코드가 하단 피들 (http://jsfiddle.net/dzejkej/xwg5f/)에서 작동하지만 상단 (http://jsfiddle.net/RymyY/)에서 작동하지 않는다는 것입니다. – dopatraman

+0

나를 위해 작동하는 것 같습니다 : "시작", "모양 추가", "사각형", "추가"및 사각형 캔버스 왼쪽 된 위 모서리에 그려집니다. 후속 직사각형은 이전 직사각형 위에 그려집니다. 분명히 서클은 아직 구현되지 않았습니다. 그렇다면 정확히 어떤 기능이 빠져 있습니까? "새 캔버스 추가"란 정확히 무엇을 의미합니까? –

답변

10

예제 코드에서 수행하는 것과 동일한 ID로 여러 요소를 만들면 안됩니다. document.getElementById('canvas');은 항상 id가 "canvas"인 첫 번째 요소를 반환합니다.

var elementID = 'canvas' + $('canvas').length; // Unique ID 

$('<canvas>').attr({ 
    id: elementID 
}).css({ 
    width: rectWidth + 'px', 
    height: rectHeight + 'px' 
}).appendTo('#work_area'); 

var canvas = document.getElementById(elementID); // Use the created element 

다음은 작동 예제입니다. http://jsfiddle.net/5b8NH/

관련 문제