2013-03-16 8 views
-1

특정 ID의 이미지가 표시된 showImage JavaScript 기능이 있습니다. 그 기능HTML 함수 내에서 JavaScript 함수 호출

<a href="javascript:showImage('img1')">show image1</a> 

가이 같은 HTML a 태그 내에서 자바 스크립트를 호출하는 것이 좋다 호출하는 HTML 링크가? 그것은 작동하는 것처럼 보이지만, 이것을 "올바른"방법입니까?

+0

나는 귀하의 질문에 정확히 무엇인지 모르겠어요를하지만 어쩌면 [이 답변] (http://stackoverflow.com/ 질문/138884/when-should-i-use-inline-vs-external-javascript). –

+0

jQuery와 같은 라이브러리를 사용하는 경우 이미지 ID 부여 및 클릭 핸들러 연결이 쉽지만 순수 JS를 사용하고 브라우저 간 호환성을 원한다면 괜찮습니다. –

+0

물론 위 내용은 제 의견입니다. 순수한 JS에 눈에 거슬리지 않게 만들려면 이미 attachments와 동일한 결과를 얻기 위해 attachEvent ('onclick', fn)'vs'addEventListener ('click', fn)'에 대한 기능 테스트를 수행해야합니다. –

답변

2

대부분의 경우 HTML과 자바 스크립트 코드를 연결하지 않으려 고합니다. 사용자에게 투명한 이벤트 처리기를 연결하는 것이 좋습니다. 이 방법은 사용자가 자바 스크립트를 사용할 수없는 경우 gracefully degrade 수 있습니다.

문제를 해결하는 많은 방법은 모두 어떤 접근 방식이 필요한지에 달려 있습니다.

은 참조 :

1
를 지원해야하는 브라우저 (들) 및 버전 (들)에 따라 다른 방법을주의

작동하는 것처럼 보이지만 이것을 "올바른"방법입니까?

정확도은 매우 주관적이지만 아마도 그렇지 않습니다.

당신은 unobtrusive JavaScript.

이 같은 것을 사용해보십시오 조사해야

:

document.getElementById('my_link').addEventListener('click', function (event) { 
    event.preventDefault(); 
    showImage('img1'); 
}, false); 
관련 문제