id="sourceImg"
이 요소에 추가되었으므로, 은이 페이지 당 요소마다 고유해야합니다. 이렇게하지 않으면 Javascript가 어떤 요소를 선택해야할지 알 수 없으므로 선택합니다. 하나가 마크 업이 페이지의 소스에 빠지고, 또는 window.onload
이벤트 처리기에서 후에 실행하는 데 필요한
<img id="sourceImg" src="source.png" title="icon">
<script>
if (screen.width == 1920) {
document.getElementById('sourceImg').style.height = '60px';
}
</script>
. img
요소를 사용할 수 있기 전에 실행되면 오류가 발생합니다.
참고 - JohnFx의 방법 그 아래 코멘트에 대해 설명입니다 :
는
<img id="sourceImg" src="source.png" title="icon" onload="sizeMe()">
<script>
function sizeMe() {
if (screen.width == 1920) {
document.getElementById('sourceImg').style.height = '60px';
}
}
</script>
이것은 img
요소의 onload
핸들러를 사용합니다. onload=""
, onclick=""
등과 같은 인라인 이벤트 처리기는 일반적으로 유지 관리가 어렵다고 간주됩니다. 그러나 위의 예제는 데모로 작동해야하며 다른 경로는 페이지로드, DOM 요소 가용성 및 간단한 예제보다 이해하기 어려울 수있는 기타 세부 사항을 이해하는 것과 관련이 있습니다. 기술적으로
편집
그리고, 당신이 할 수 있습니다 :
http://jsfiddle.net/pdN3y/
주
<img id="sourceImg"
onload="if(screen.width < 1920) this.style.width='60px';"
src="http://upload.wikimedia.org/wikipedia/commons/thumb/a/ae/001_Jornal_Monsenhor_A_Comarca_23_de_Marco_de_1947.jpg/762px-001_Jornal_Monsenhor_A_Comarca_23_de_Marco_de_1947.jpg"
title="icon">
, 나는 변화가 더 분명하게하기 위해 if
문을 변경했습니다. 그러나 은이 아닙니다. 침입하는 것은 나쁜 생각이고 나쁜 습관입니다. 페이지 로딩과 DOM 가용성을 알아내는 데 시간을 할애하여 보냈습니다.
그렇게 할 수 없습니다. –
이와 같은 응용 프로그램을 작동시키는 데 유용한 트릭이나 해결 방법이 있습니까? – user981053