각 DIV의 클래스에 따라 웹 사이트에서 특정 DIV 요소의 가시성을 전환하려고합니다. 나는 그것들을 토글하기 위해 기본 JavaScript 스 니펫을 사용하고 있습니다. 문제는 스크립트 가 JavaScript에서 지원되지 않는 getElementById
것처럼 만 사용한다는 것 getElementByClass
입니다. 그리고 불행히도 DIV 이름은 특정 카테고리 이름을 사용하여 내 XSLT 스타일 시트에 의해 동적으로 생성되기 때문에 DIV 이름을 지정하는 데 id가 아닌 class를 사용해야합니다.
특정 브라우저가 이제를 지원한다는 것을 알고 getElementByClass
있지만 Internet Explorer가 지원 하지 않기 때문에 해당 경로를 사용하고 싶지 않습니다.
함수를 사용하여 클래스별로 요소를 가져 오는 스크립트를 찾았 지만 (예 :이 페이지의 # 8 : http://www.dustindiaz.com/top-ten-javascript/ ) 통합 방법을 알 수 없습니다. 내 토글 스크립트와 함께.
다음은 HTML 코드입니다. DIV 자체는 XML / XSLT를 사용하여 페이지로드시 생성되므로 누락되었습니다.
주요 질문 : ID로 요소를 가져 오는 대신 클래스별로 요소를 얻으려면 아래 Toggle 스크립트를 어떻게 얻습니까?
<html>
<head>
<!--This is the TOGGLE script-->
<script type="text/javascript">
<!--
function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'block';
}
//-->
</script>
</head>
<!--the XML/XSLT page contents will be loaded here, with DIVs named by Class separating dozens of li's-->
<a href="#" onclick="toggle_visibility('class1');">Click here to toggle visibility of class 1 objects</a>
<a href="#" onclick="toggle_visibility('class2');">Click here to toggle visibility of class 2 objects</a>
</body>
</html>