Ich versuche, Loader mit AngularJS zu schreiben, indem ich Direktive und spin.js benutze (die jQuery nicht benutzt).
Ich weiß, dass AngularJS jQuery lite besitzt. Allerdings kann ich width
nicht von element
in Direktive abrufen.
Im Grunde brauche ich die Tastenbreite (Inside Directive)
Ich habe es bisher versucht:
%Vor%Hier gehen wir:
Demo in Plunker
HTML
%Vor%JS
%Vor%Danke,
Verwenden Sie element[0].offsetWidth
.css('width')
ist undefiniert, da Sie kein inline CSS haben, das die Breite definiert, und .width
ist eine jQuery-Sache.
angular.element
verwendet ein 'jqLite', wenn jQuery nicht verfügbar ist und nur eine Teilmenge der Funktionalität bietet. Der berechnete CSS-Stil gehört nicht dazu (und wird es in Kürze nicht mehr geben ) aufgrund von Auswirkungen auf die Leistung).
Es gibt einen anständigen Hinweis darauf, was Sie ohne jQuery hier
tun könnenFür diejenigen, die am Abrufen einer beliebigen CSS-Eigenschaft interessiert sind, Sie können auf den CSS-Stil eines Angular-Elements in der Verknüpfungsfunktion einer Anweisung zugreifen, indem Sie
drücken %Vor%Und dann greifen Sie auf den Wert einer beliebigen CSS-Regel wie folgt zu:
%Vor%Tags und Links angularjs