Zugriff auf eine benutzerdefinierte CSS-Eigenschaft (auch als CSS-Variable bezeichnet) über JavaScript

Wie werden benutzerdefinierte CSS-Eigenschaften abgerufen und festgelegt (auf die mit @ zugegriffen wirvar(…) im Stylesheet) mit JavaScript (normal oder jQuery)?

Hier ist mein erfolgloser Versuch: Klicken auf die Schaltflächen ändert das üblichefont-weight Eigenschaft, aber nicht die benutzerdefinierte--mycolor Eigentum

<html>
<head>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
  <style>
    body { 
      --mycolor: yellow;
      background-color: var(--mycolor);
    }
  </style>
</head>
<body>

  <p>Let's try to make this text bold and the background red.</p>
  <button onclick="plain_js()">Plain JS</button>
  <button onclick="jQuery_()">jQuery</button>

  <script>
  function plain_js() { 
    document.body.style['font-weight'] = 'bold';
    document.body.style['--mycolor'] = 'red';
  };
  function jQuery_() {
    $('body').css('font-weight', 'bold');
    $('body').css('--mycolor', 'red');
  }
  </script>
</body>
</html>

Antworten auf die Frage(6)

Ihre Antwort auf die Frage