2016-03-27 11 views
-2

Gibt es eine Möglichkeit, Stil Attr in einer Variablen mit JS zu speichern?speichern attr Stil in einer Variablen

Ich habe versucht, diese example

<div style="width: 100px; height: 100px; background: cyan"></div> 

var style = 'style="' + $("div").attr('style') + '"'; 
    alert(style); 
+1

was ist es, Sie zu erreichen versuchen, da dies die Zeichenfolge Stil bekommt richtig z 'width: 100px; Höhe: 100px; Hintergrund: cyan' – user2950720

Antwort

-1
var style = 'style="' + document.getElementsByTagName('div')[0].getAttribute('style') + '"'; 

die reine JavaScript-Version Ihres Beispiel.

+0

Wenn Sie das JS auf meiner Website setzen, wird es style = "undefined" zeigen –

+0

Live-Beispiel funktioniert! https://jsfiddle.net/e1kymq8x/ –

0

Versuchen Sie dies auf Ihrer Website genau so, wie der Code hier erscheint? Wenn dies der Fall ist, wird es wahrscheinlich undefiniert zurückgegeben, da auf der Seite mehr als ein "div" vorhanden ist. Versuchen Sie, dem fraglichen Div eine ID zu geben, und ändern Sie den JS von $ ('div') zu $ ​​('# whatwasidyouchose').

diesen Code Versuchen Sie das Bild der Verfügbarkeit als ein Problem auszuschließen:

$(document).ready (function() { 
    var style = 'style="' + $("selectorofimage").attr('style') + '"'; alert(style); 
}); 
+0

Es ist eigentlich ein Bild, der Weg zum Element ist gut. Das Problem könnte sein, dass das Bild nicht geladen wird, wenn das Skript ausgeführt wird. –

+0

Das würde sicherlich zu undefinierten führen, Sie könnten das JS in eine document.ready-Funktion einbinden, um diese Möglichkeit auszuschließen. Um dies zu bestätigen, gibt das obige JS die Stile zurück, die dem fraglichen DOM-Element explizit zugewiesen sind. Da Ihr Anwendungsfall ein Bild ist, frage ich mich, ob Sie vielleicht versuchen, die Dimensionen des Bildes selbst zu ermitteln, anstatt die Stilattribute? Ich will nur bestätigen, dass du den richtigen Baum bellst. –

+0

Der Bildstil enthält nur Positionierungs- und Bemaßungseigenschaften. Ich habe dieses Skript in die Funktion [onAvailable()] (https://jsfiddle.net/y20v4p9c/) geschrieben und es gibt immer noch undefined zurück. –