Ändern Sie den Stil dynamisch von keinem HTML-Element

8

Ich benutze angularJs und möchte den Stil eines Attributs dynamisch ändern. Normalerweise würde ich dies mit ng-style im HTML-Element tun.

Aber ich möchte Stile auf die Spur einer Bereichseingabe anwenden. Auf dieses Element kann in CSS wie folgt zugegriffen werden: .slider::-webkit-slider-runnable-track (als Beispiel für den Webkit-Selektor). Kann ich den Stil für ein solches Attribut in einer Funktion ändern, in der ich die ID für dieses Element habe?

ZB (wie würde ich es in jquery tun):

%Vor%     
j0h4nn3s 09.03.2016, 00:47
quelle

2 Antworten

2

Javascript hat im Allgemeinen keinen Zugriff auf Pseudo-Elemente. Eine mögliche Abhilfe wäre das Einfügen eines Stil-Tags

%Vor%

FIDDLE

Ein anderer Weg wäre, die Stile im Stylesheet zu behalten und nur eine andere Klasse für einen anderen Stil zu verwenden

%Vor%

und dann

%Vor%

FIDDLE

    
adeneo 09.03.2016, 00:59
quelle
0

für AngularJs Ich empfehle, $ scope nicht zu verwenden, sondern stattdessen service, factory oder directory für den CSS-Arbeitstyp html template.

Wenn Sie diesen Ansatz jedoch trotzdem verwenden möchten, können Sie:

%Vor%

Hier können Sie id für Element, cssClass von Ihrer css-Klasse übergeben und add als bool-Wert verwenden; übergeben Sie, was immer Sie wollen.

    
CodeOverRide 09.03.2016 01:39
quelle

Tags und Links