Mathias Brodala: Safari & getComputedStyle

Beitrag lesen

Hallo Sven.

folgendes Script soll die CSS display Eigenschaft eines Layers herausfinden:

element=document.getElementById("layername");
document.defaultView.getComputedStyle(element, "").getPropertyValue("display");

Dies funktioniert bis jetzt auch in fast allen Browsern wunderbar, bis auf den SAFARI Browser auf dem Macintosh.

Ich nutze folgende Wrapper-Funktion:

function getCurrentStyle(node, prop) {  
  if (!node || typeof(node) != 'object' ||  
      !prop || typeof(prop) != 'string') return;  
  
  if (window.getComputedStyle) {  
  
    return window.getComputedStyle(node, null)[prop];  
  
  } else if (document.currentStyle) {  
  
    return node.currentStyle[prop];  
  
  }  
  
  return undefined;  
}  
  
/* Anwendungsbeispiel:  
  
alert(getCurrentStyle(document.body, background));  
  
*/

AFAIK unterstützt Safari document.currentStyle.

Einen schönen Montag noch.

Gruß, Mathias

--
sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
debian/rules