Layer Transparenz ändern

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Layer Transparenz ändern

    Hallo zusammen,

    ich möchte gerne die Transparenz eines Layers per JS ändern.

    Hierfür habe ich mir folgende Funktion geschrieben:

    Quellcode

    1. function setopacity(id, opacity) {
    2. obj = document.getElementById(id);
    3. obj.style.MozOpacity = opacity / 100; // Mozilla and Phoenix/FireBird/FireFox
    4. obj.style.KhtmlOpacity = opacity / 100; // khtml engine: Konquerer/Safari
    5. obj.style.opacity = opacity / 100; // official CSS3 method
    6. try {
    7. obj.filters.Alpha.opacity = opacity; // IE
    8. }
    9. catch (ex) {}
    10. }
    Alles anzeigen


    Da der Firefox Probleme mit dem "obj.filters.Alpha.." hat, musste ich die Zeile in eine Try-Block packen. Geht das noch irgendwie eleganter?

    Deckt die Funktion alle gängigen Browser ab? Ich habe Konquerer von einer Live-CD aus getestet, leider funktioniert hier die Transparenz nicht. Hat da jemand eine Idee?

    Gruß und Danke

    Casper
  • Hat sich erledigt..

    Konquerer hab ich jetzt weggelassen.. damit kann ich leben.. hoffentlich die Konquereruser auch ;)

    Quellcode

    1. function set_opacity(id, opacity) {
    2. obj = document.getElementById(id);
    3. if (obj.filters) {
    4. obj.filters.Alpha.opacity = opacity; // IE
    5. }
    6. else {
    7. obj.style.opacity = opacity / 100; // official CSS3 method
    8. obj.style.MozOpacity = opacity / 100; // Mozilla and Phoenix/FireBird/FireFox
    9. }
    10. }
    Alles anzeigen