나는 캔버스에 클릭 이벤트에서 표시되어야하는 일부 이미지를 표시하려고합니다. 그리고 모든 것은 괜찮은 것처럼 보이지만, 오랫동안 수정할 수없는 버그를 발견했습니다. 버그는 첫 번째 페이지 오프닝 램프 이미지에 표시되지 않습니다. 다음 단계에 따라 재현 할 수 있습니다.캔버스에 추가하는 이미지의 이상한 동작
- 열기 link;
- 클릭하여 이미지 < - 깨끗한 사각형이 표시됩니다.
- 다시 클릭하십시오. < - 사각형이 사라집니다.
- 다시 클릭하십시오. < - 이미지가있는 사각형이 표시됩니다.
이미지가 처음으로 표시되는 이유는 무엇입니까?
흠, 실제로 나는 의미를 포착하지 않았습니다. 따라서, 참조를 반환하려면 어떻게해야합니까? 이렇게해야할까요?'processButtonImages' 함수의 끝에'return processButtonImages;'? – rdo
실제로이 시점에서 의미를 다시 고려해야합니다. 일반적으로 이것을 할 수있는 'buttons [i] .onload = function() {processButtonImages (i, delta, buttons [i], object)};'하지만 이것을 루프에 할당하면 동기화 문제가 발생합니다. 폐쇄로 인해). 루프를 "느슨하게"하거나 루프 인덱스를 처리하기 위해 다른 (내부) 클로저를 생성해야합니다. – devnull69
예,이 코드 부분에 문제가있었습니다. 그리고 몇 가지 추가 디버그 후 그것을 해결합니다. 감사! – rdo