2013-07-05 2 views
0

내 친구의 Minecraft Classic Server (in-dev 버전 here)에 대한 사용자 뷰어를 만들고 있는데 스킨 아래에 슬라이더가 있습니다. 확대/축소 슬라이더이기 때문에 피부의 크기를 변경해야합니다. 스킨 뷰어와 슬라이더는 완벽하게 작동합니다. 그러나 내 문제는 요소에 있습니다. 한 번 (코드 첨부) 내 <img>으로 그릴 수있는 것으로 보입니다. 해결 방법을 모르겠습니다. 내 현재 계획은 요소를 삭제하고 다시 작성하는 것입니다.하지만 어떻게해야할지 모르겠습니다. 누구든지 이것에 관한 자료, 팁 또는 정보가 있습니까?자바 스크립트 요소를 다시 만듭니다

Page source: http://pastebin.com/R4qqTVz8 
Modified mcSkinRenderer.js (courtesy of Joran de Raaff): http://ns2.nuclearstorm.net/nucsto/mcSkinRenderer.js 
+1

https://developer.mozilla.org/en-US/docs/Web/API/document.createElement – putvande

+0

@putvande 그래서 하드 코딩 된 요소를 다시 작성하고 이름을 PHP 변수 및 액세스, 또는 src와 같은 요소의 데이터를 복사하고 JS 변수에 저장해야합니까? – Lemmmy

+0

이 줄''SELECT * FROM players WHERE Name = ''. $ _GET [ '이름']. " '", $ db'는 위험합니다. SQL 주입 공격을 허용합니다. 저장 프로 시저를 사용하여이 문제를 해결할 수 있습니다. –

답변

1

코드에 어떤 현상이 발생 했습니까?

renderMCSkins를 처음 실행하면 페이지를 조사하여 '스킨'클래스의 모든 이미지를 찾습니다. 그런 다음 이미지를 캔버스 요소로 바꾸고 이미지를 새 캔버스로 렌더링합니다. 슬라이더를 사용하면 renderMCskins 함수가 다시 실행됩니다.이 시간은 이미 캔버스 요소로 변환되었으므로 해당 클래스 이름이 페이지에 더 이상 표시되지 않습니다.

두 가지 옵션이 있습니다.

먼저 캔버스 요소의 모든 인스턴스를 생각하고 삭제 한 다음 초기 이미지로 바꾸고 새로운 줌 값으로 renderMCSkins를 실행하십시오.

둘째, 이미 렌더링 된 캔버스 요소를 변경하는 일종의 업데이트 함수를 포함하도록 mcSkinRenderer.js를 업데이트 할 수 있습니다.

+0

고마워요! 나는 그것이 이런 식으로 될 것이라고 생각했고, 당신은 올바른 방향으로 나를 지적했습니다. 당신은 또한 저를 동일한 특성에 광대하게 응시하는 날 구해 줬습니다. – Lemmmy

+0

걱정할 필요가 없습니다. 나는 또한 업데이트 기능을 제공했다. 작동하는지 알려주세요. 당신은 renderMCSkins 함수에서 조금 변한 것을 알 수 있습니다. 이전에 renderMCSkins는 'skin'클래스로만 이미지를 반환 할 것이고 이것은 캔버스 요소를 찾고 대체 할 것입니다. –

+0

Ah, very useful indeed :) 다시 한 번 감사드립니다 – Lemmmy

관련 문제