[javascript] Javascript로 <html>에 클래스를 추가 하시겠습니까?

<html>Javascript를 사용하여 루트 요소에 클래스를 어떻게 추가 합니까?



답변

이렇게 :

var root = document.getElementsByTagName( 'html' )[0]; // '0' to assign the first (and only `HTML` tag)

root.setAttribute( 'class', 'myCssClass' );

또는 이전에 적용된 클래스를 보존하기 위해 이것을 ‘세터’라인으로 사용하십시오 : (@ ama2에게 감사드립니다)

root.className += ' myCssClass';

또는 필요한 브라우저 지원에 따라 다음 classList.add()방법을 사용할 수 있습니다 .

root.classList.add('myCssClass');

https://developer.mozilla.org/en-US/docs/Web/API/Element/classList
http://caniuse.com/#feat=classlist

최신 정보:

HTML요소 참조를위한보다 우아한 솔루션 은 다음과 같습니다.

var root = document.documentElement;
root.className += ' myCssClass';
// ... or:
//  root.classList.add('myCssClass');
//


답변

이것은 또한 작동합니다.

document.documentElement.className = 'myClass';

호환성 .

편집하다:

IE 10은 읽기 전용이라고 간주합니다. 아직:

작동했습니다!?

오페라 작품 :

공장

다음에서 작동하는지 확인할 수도 있습니다.

  • 크롬 26
  • Firefox 19.02
  • Safari 5.1.7


답변

jQuery를 살펴 보는 것이 좋습니다 .

jQuery 방식 :

$("html").addClass("myClass");


답변

document.documentElement.classList.add('myCssClass');

classListie10부터 지원됩니다 : https://caniuse.com/#search=classlist


답변

덮어 쓰지 말고 클래스를 추가해야합니다.

var headCSS = document.getElementsByTagName("html")[0].getAttribute("class") || "";
document.getElementsByTagName("html")[0].setAttribute("class",headCSS +"foo");

브라우저 비 호환성을 피하기 위해 jQuery를 사용하는 것이 좋습니다.


답변

Jquery로 … 다음과 같이 html 요소에 클래스를 추가 할 수 있습니다.

$(".divclass").find("p,h1,h2,h3,figure,span,a").addClass('nameclassorid');

nameclassorid 포인트가 없거나 시작 부분에 #


답변