비슷한 스레드를 살펴본 결과 아무 것도 쓸모가 없었습니다.페이지로드 후 firefox에서 DOM 요소의 다시 그리기/다시 칠하기를 강요합니다
페이지가로드 된 후 이미지를 바꾸려면 새 위치가 있으면 src 속성을 변경해야합니다. 이미지를 로컬 이미지로 바꾸고 싶습니다.
을 통해 src 속성을 직접 변경합니다. img.src = urlString; 또는 setAttribute() 메서드를 사용하면 src가 설정되지만로드 된 페이지의 이미지는 다시 그려지지 않습니다. 내가 사용했다 window.alert (img.src);을 사용하여 src 속성이 실제로 변경되었는지 확인하십시오.
다음 코드 스 니펫을 here에서 사용하여 강제로 다시 그리기했습니다.
var n = document.createTextNode(' ');
var disp = img.style.display;
img.appendChild(n);
img.style.display = 'none';
img.style.display = disp;
n.parentNode.removeChild(n);
아무 것도 작동하지 않는 것 같습니다. 페이지가로드되었거나 로컬 파일을 사용하고 있기 때문에 페이지가로드 되었습니까?
로컬 파일이 % AppData % \ temp에 있습니다. 권한 문제 일 수 있습니까? 브라우저 콘솔에서 오류가 발생하지 않습니다. 누군가가 양식을 입력하고 데이터를 잃어 버릴 수 있기 때문에 전체 페이지를 새로 고치고 싶지 않습니다.
모든 의견을 보내 주시면 감사하겠습니다. 감사.
편집 : 약간의 설명. 확장자를 사용하여 모든 창에 스크립트를 삽입합니다. 창 하나가 페이지를로드하고 나면 처리를 위해 이미지를 다른 스크립트로 보내면 스크립트는 새 파일 위치가있는 창에 이벤트를 반환합니다. 이벤트가 잡히면 함수가 호출되어 특정 이미지의 src 특성을 변경합니다. 모든 것을 검사했지만 src는 변경되었지만 브라우저는 새 이미지를 표시하지 않습니다.
다른 편집 : 파일 : /// pathtofile/을 사용하여 주소 표시 줄에서 파일에 액세스 할 수 있으므로 권한 문제가없는 것 같습니다. 외부 URL (예 : : http : //)은 페이지로드 후에도 작동하는 것으로 보입니다. 로컬 URL로 어떻게 작동시킬 수 있습니까?
문서 흐름이 중단되지 않으면 이전 이미지를 삭제하고 (DOM 노드 삭제) 이전 이미지를 대체 할 수 있습니다 새로운 것과. – Zemljoradnik
나는 확신 할 수 없다. 나는 어떤 페이지가 나왔는지 알 수 없으므로 어떤 종류의 피해가 있는지 알지 못합니다. –