주어진 CSS 값에 액세스하기 위한 가장 기본적인 구문은 object.style.property 이며, camelCase 표기법을 사용합니다. 예를 들어 ID가 "header"인
의 배경색 값에 액세스하기 위해 값을 커넥터로 바꾸려면 다음 구문을 사용합니다. document.getElementById("header" ).style. backgroundColor= "#ccc"; 그러나 "float"라는 단어는 JavaScript 예약어이므로 object.style.float 을 사용하여 액세스할 수 없습니다. 두 개의 브라우저에서 수행하십시오: IE에서 작성: document.getElementById("header").style.styleFloat = "left" Firefox에서 작성: document.getElementById (" header").style.cssFloat = "left"; 2. 요소의 추론된 스타일은 object.style.property 구문을 사용할 수 있습니다. , 외부에서 편리하게 CSS 스타일에 액세스하고 수정할 수 있지만 이러한 구문은 이미 설정된 인라인 스타일이나 JavaScript에서 직접 설정한 스타일만 검색할 수 있다는 제한이 있습니다. 외부 스타일 시트에 액세스할 수 없습니다. 요소의 "추론된" 스타일에 액세스하려면 다음 코드를 사용할 수 있습니다.
IE에서 다음을 작성하세요. var myObject = document.getElementById("header") var myStyle = myObject .currentStyle.BackgroundColor; Firefox에서 다음을 작성하세요. var myObject = document.getElementById("header"); var myCompulatedStyle = document.defaultView.getCompulatedStyle(myObject, null) var myStyle = myCompulatedStyle.BackgroundColor;
3. 요소의 "class"에 액세스합니다. "float"와 마찬가지로 "class"는 JavaScript에서 예약어입니다. 컨테이너에서는 "클래스"에 액세스하기 위해 다음 구문을 사용합니다. IE에서는 다음과 같이 작성하세요. var myObject = document.getElementById("header"); var myAttribute = myObject.getAttribute("className") Firefox에서는 다음과 같이 작성하세요. var myObject = document.getElementById("header"); var myAttribute = myObject.getAttribute("class");
이 구문은 setAttribute 메서드를 사용해도 적용됩니다.
4. 3번 항목에서 언급했듯이 < ;label> " 라벨에: IE에서는 다음을 작성하세요. var myObject = document.getElementById("myLabel"); var myAttribute = myObject.getAttribute("htmlFor"); Firefox에서는 다음을 작성하세요. : var = document.getElementById("myLabel"); var myAttribute = myObject.getAttribute("for") 5. 마우스 포인터 위치 가져오기 마우스 포인터의 위치를 계산하는 것은 매우 드물지만 필요할 때 IE와 Firefox에서는 구문이 다릅니다. 여기에 작성된 코드는 가장 기본적인 것일 수도 있고, 복잡한 이벤트 처리의 특정 부분일 수도 있습니다. 하지만 유사점과 차이점을 설명할 수는 있습니다. 동시에 IE의 결과는 Firefox와 더 다를 것이며 이 방법 자체에는 버그가 있다는 점을 지적해야 합니다. 일반적으로 이 차이는 "드래그 위치"로 보상할 수 있지만 이는 다른 주제에 대한 기사입니다. :) !
6. 보이는 영역과 창의 크기를 구합니다 때때로 브라우저의 보이는 위치의 크기를 구해야 하는데, 일반적으로 이를 "가시 영역"이라고 합니다. ". IE에서는 다음과 같이 작성하세요. var myBrowserSize = [0, 0]; myBrowserSize[0] = document.documentElement.clientWidth; myBrowserSize[1] = document.documentElement.clientHeight; 🎜>Firefox에서 다음을 작성하세요. var myBrowserSize = [0, 0]; myBrowserSize[0] = window.innerWidth; myBrowserSize[1] = window.innerHeight; . 알파 투명도
글쎄, 이것은 JavaScript 구문 문제가 아니라 CSS에서 파생된 알파 투명도입니다. 그러나 객체가 페이드 인/아웃되어야 하는 경우 이를 수행하려면 JavaScript가 필요합니다. 이는 일반적으로 루프에서 CSS의 알파 투명도 설정에 액세스하여 수행됩니다. 수정해야 하는 JavaScript 코드는 다음과 같습니다. IE에서 작성: #myElement { filter: alpha(opacity=50) } Firefox에서 작성: # myElement { opacity : 0.5; } IE에서 작성: var myObject = document.getElementById("myElement"); myObject.style.filter = "alpha(opacity=80)"; Firefox에서: var myObject = document.getElementById("myElement"); myObject.style.opacity = "0.5"; 다른 점이 있나요?
이것은 작성자가 편집한 것입니다. (via: Firefox와 IE의 7가지 JavaScript 차이점)은 자신의 경험을 바탕으로 작성되었으며 sofish는 아직 JavaScript의 초보자입니다. 더 많은 차이점이 있다면, 문제를 제기하고, 공유하고, 함께 배울 수 있습니다!