getAttribute('style') im IE == object
Balu
- javascript
0 Dieter Raber0 Balu
0 Tobias Kloth
Hat mal jemand einen Tipp fuer mich, wie ich im IE die Textversion des style-Attributes von Elementen kriege?
getAttribute("style") liefert im IE ein Objekt zurueck, waehrend ich im Mozilla das erwartete Textfragment kriege:
Beispiel:
<html>
<head>
<title>Test</title>
</head>
<body>
<p style="background: #f00;" id="paragraph">ein Paragraph</p>
</body>
</html>
<script>
alert(document.getElementById("paragraph").getAttribute("style"));
</script>
Balu
Hallo Balu,
Der IE gibt folgendes Array zurueck:
clear =>
posRight => 0
backgroundRepeat => repeat
borderTopStyle =>
marginTop =>
fontVariant =>
listStylePosition =>
backgroundPositionX => 0%
lineHeight =>
scrollbarHighlightColor =>
overflowX =>
paddingLeft =>
borderLeftWidth =>
padding =>
listStyleType =>
borderLeftColor =>
display =>
textDecorationLineThrough => false
marginBottom =>
textKashidaSpace =>
borderCollapse =>
textDecorationBlink => false
scrollbarFaceColor =>
backgroundAttachment => scroll
borderRightStyle =>
fontStyle =>
textUnderlinePosition =>
textIndent =>
textDecorationOverline => false
layoutGridMode =>
right =>
pageBreakAfter =>
background => #f00
filter =>
borderColor =>
posWidth => 0
left =>
minHeight =>
accelerator => false
rubyOverhang =>
layoutGrid =>
visibility =>
verticalAlign =>
borderBottomWidth =>
scrollbarShadowColor =>
textTransform =>
lineBreak =>
scrollbarArrowColor =>
margin =>
borderBottomColor =>
borderTopWidth =>
behavior =>
letterSpacing =>
layoutFlow =>
font =>
borderTopColor =>
paddingBottom =>
whiteSpace =>
overflow =>
borderBottomStyle =>
cssText => BACKGROUND: #f00
width =>
clip =>
cursor =>
fontSize =>
imeMode =>
backgroundPosition => 0% 0%
color =>
paddingRight =>
textAutospace =>
pageBreakBefore =>
direction =>
bottom =>
fontFamily =>
unicodeBidi =>
posHeight => 0
posBottom => 0
borderRightColor =>
styleFloat =>
textJustify =>
backgroundColor => #f00
posTop => 0
zIndex => 0
borderLeftStyle =>
zoom =>
listStyleImage =>
wordSpacing =>
textDecoration =>
borderBottom =>
layoutGridChar =>
tableLayout =>
border =>
textAlign =>
backgroundPositionY => 0%
backgroundImage => none
borderWidth =>
borderTop =>
textJustifyTrim =>
scrollbar3dLightColor =>
fontWeight =>
scrollbarDarkShadowColor =>
textAlignLast =>
posLeft => 0
borderRightWidth =>
paddingTop =>
wordBreak =>
textOverflow =>
rubyPosition =>
borderStyle =>
borderRight =>
wordWrap =>
position =>
overflowY =>
textDecorationUnderline => false
layoutGridLine =>
top =>
textDecorationNone => false
writingMode =>
height =>
scrollbarTrackColor =>
listStyle =>
scrollbarBaseColor =>
marginRight =>
marginLeft =>
layoutGridType =>
textKashida =>
rubyAlign =>
borderLeft =>
Du kannst also einfach feststellen, ob du einen String oder ein Array zurueckbekommst, du dann entsprechend damit umgehen.
Gruß,
Dieter
Hi Dieter
sieht aus, als waere "cssText" in dem Array das was ich suche... Leider ist das alles in CAPS. Naja - haette mich auch gewundert, wenn der IE mal so funktioniert wie es sollte...
Balu
Hallo Balu,
getAttribute("style") liefert im IE ein Objekt zurueck, waehrend ich im Mozilla das erwartete Textfragment kriege:
Was der IE liefert, hat dir Dieter ja schon gesagt, aber Opera liefert nochmal was anderes:
| background-attachment: scroll; background-repeat: repeat;
| background-position: 0% 0%; background-color: #ff0000;
| background-image: none
Grüße aus Nürnberg
Tobias