2014-03-26 2 views
0

내 코드에 jquery.append이 여분의 요소를 생성합니다. 나는 무엇이 잘못되었는지 확신하지 못한다. jquery append가 여분의 요소를 만듭니다.

내가 MyDiv2, MyCanvas과 동일한 수준으로 다른 div를 추가 할 당신의 도움이

var topDiv = document.createElement('div'); 

this.topDiv.innerHTML = '<div class="MyDiv1"></div><div class="MyDiv2">' + 
         '<canvas class="MyCanvas" width="10" height="1">' + 
         '</canvas></div><div class="MyDiv3"></div><span class="MySpan"></span>'; 
MyCanvasEle = topDiv.childNodes[1].childNodes[0]; 
MyCanvasEle.getContext('2d'); 

주셔서 대단히 감사합니다. 결국 for 루프에서 i로 0을 대체 하겠지만, 지금은 첫 번째 추가가 원하는 위치, 너비 및 len이있는 요소를 제공하지만 속성이없는 추가 요소도 제공합니다.

$(".MyDiv2").append('<div id="MyID' + 0 + '" class="MyClass1"><table border="1" width="100% height="5"><tr><td></td></tr></table></div>'); 
$("#MyID"+0).css("top", 5); 
+2

덧셈에 '+ 0'다음에 두 번째 '+'가 없습니다. 나는 그저 오타라고 가정하지만, 가장 먼저 그 것을 고친다. –

+0

네, 질문에 오타가 있습니다. 오타가 수정되었습니다. – user3403687

답변

1

나는 당신의 APPEND 코드가 유효 어떠한 경우에도 변수로 대체 될 0을 가정하고 - 당신이 누락되어 + : 깔끔함을 위해

          V - insert here :) 
$(".MyDiv2").append('<div id = "MyID' + 0 + '" class="MyClass1"><table border="1" width="100% height="5"><tr><td></td></tr></table></div>'); 
$("#MyID"+0).css("top", 5); 

또한 주변의 공간을 없애 당신의 id = :

항상
$(".MyDiv2").append('<div id="MyID' + 0 + '" class="MyClass1"><table border="1" width="100% height="5"><tr><td></td></tr></table></div>'); 
$("#MyID"+0).css("top", 5); 

A와 디버거를합니다 (F12 크롬 기능과 같은)를 사용하는 것이 좋습니다) 전자 HTML 구조를 xamine하고 b) 코드를 중단합니다.

+0

여분의 공백을 제거했습니다. 귀하의 제안에 감사드립니다. Firebug에서 중단 점을 사용하는 방법을 배우기 시작합니다. – user3403687