2012-01-15 1 views
1

을 (IE와 크롬은 잘 작동)이 다음과 같이 표시됩니다FF로 div의 가시성을 자바 스크립트로 어떻게 전환합니까? 나는 자바 스크립트를 사용하여 div 레이어의 가시성을 전환하기 위해 노력하고있어, 그래서

document.all["layer1"].style.visibility='visible'; 

document.all["layer1"].style.visibility='hidden'; 

어떤 것 Firefox에서이 구문을 사용하려고하면이 구문이 생깁니 까? 그걸 알고 있다면 if 문을 추가하여 브라우저가 파이어 폭스인지 확인하고 대체 코드를 사용합니다.

+0

document.all은 일반적으로 Firefox에서 사용됩니다 (설명대로 사용). 작동하지 않는다면 실제로 어떻게 사용하고 있습니까? 문제를 보여주는 전체 페이지에 대한 링크를 게시 할 수 있습니까? –

답변

3

document.all가 지원되지 않는 기능입니다 않으며, DOM의 사양에 인 (Here 더 그에서이다). 다른 방법으로 div를 잡아야합니다.

document.querySelector('div#layer1').style.visibility = 'hidden';  
document.querySelector('div#layer1').style.visibility = 'visible'; 

또는

document.getElementById('layer1').style.visibility = 'hidden'; 
document.getElementById('layer1').style.visibility = 'visible'; 

getElemenyById

querySelector

는 두 가지 방법이 있습니다.

2

document.all[]을 사용하지 마십시오. 모든 브라우저에서 지원되는 것은 아니며 대부분 IE4의 유물입니다. 대신 <div>의 id 속성에 액세스 할 수 document.getElementById()를 사용

document.getElementById("layer1").style.visibility = 'hidden'; 
document.getElementById("layer1").style.visibility = 'visible'; 
+0

그래, 나는 90 년대에 인쇄 된 책에서 자바 스크립트를 배웠다. 내가 그걸 시도 할께. –

+0

@AlexDatcu 오, 꼭 새로운 책을 구하십시오! 그 이후 자바 스크립트는 성숙 해 왔습니다. Douglas Crockford의 JavaScript를 권장합니다 : Good Parts 및 David Flanagan의 Javascript : The Definitive Guide –

+0

고마워요! 내가 그 중 하나를 얻을 수 있는지 알게 될거야. –

관련 문제