Klawischnigg: Eventhandler "onbecomevisible" oder ähnliches gesucht.

Hi there,

weiss jemand, ob es irgendeinen Browser gibt, im dem ein Eventhandler implementiert ist, der auslöst, wenn ein Objekt sichtbar wird?
Also zB anzuwenden auf einen Bereich, der vorher mit "visibility:hidden" oder "display:none" auf unsichtbar gesetzt wurde und der durch irgendeinen Umstand sichtbar wird?

  1. weiss jemand, ob es irgendeinen Browser gibt, im dem ein Eventhandler implementiert ist, der auslöst, wenn ein Objekt sichtbar wird?

    Gibt es (meines Wissens) nicht. Was hast du vor, welches Problem willst du damit lösen?

    Mathias

    1. Hi there,

      weiss jemand, ob es irgendeinen Browser gibt, im dem ein Eventhandler implementiert ist, der auslöst, wenn ein Objekt sichtbar wird?

      Gibt es (meines Wissens) nicht.

      Wenn Du das sagst, dann geb' ich die Suche auf.;)

      Was hast du vor, welches Problem willst du damit lösen?

      Ich habe in einer Eingabemaske für eine Webapplikation "Karteireiter" konstruiert, um die verschiedenen Aspekte einer Kundenadresse zu repräsentieren. Von diesen Bereichen ist nur jeweils einer zu sehen und es wäre hilfreich gewesen, wenn es so einen Eventhandler gegeben hätte, der "auslöst", wenn ein Bereich sichtbar wird; onfocus funktioniert bei einem div-Element halt nicht;) - anyway, mein Ansinnen war eigentlich (wie so vieles in der harten Programmierarbeit) nur meiner Bequemlichkeit geschuldet, und natürlich gibt/gab es wie immer einen Workaround, den zu posten aber aufgrund der spezifischen Situation imho keinen Sinn macht; einen Eventhandler, der auch nur ähnliches bewirkt, hab ich ohnehin nicht gefunden, danke jedenfalls für Dein Bemühen...

      1. @@Klawischnigg:

        nuqneH

        onfocus funktioniert bei einem div-Element halt nicht

        Doch, wenn dieses @tabindex hat.

        Dann funktioniert auch die CSS-Pseudoklasse :focus; vielleicht brauchst du ja gar kein zusätzliches JavaScript.

        Qapla'

        --
        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
        (Mark Twain)
      2. Was hast du vor, welches Problem willst du damit lösen?

        ..einen Eventhandler, der auch nur ähnliches bewirkt, hab ich ohnehin nicht gefunden, danke jedenfalls für Dein Bemühen...

        Nicht unbedingt ähnliches, aber du könntest DOMAttrModified nutzen.

        <div id="x">div</div>  
        <script type='text/javascript'>  
        var e = document.getElementById('x');  
          
        e.addEventListener('DOMAttrModified', function(e) {  
            alert(e.attrName + ':' + e.prevValue + '=>'+e.newValue);  
        }, false);  
        </script>  
        <input type="button" value="click" onclick="e.style.display = 'none'">  
        
        

        Allerdings sind die Attribute prev- und newValue in dem Fall nicht brauchbar.

        Struppi.

        1. Hi there,

          Nicht unbedingt ähnliches, aber du könntest DOMAttrModified nutzen.

          Sehr interessant, das kannte ich noch nicht, danke...

  2. @@Klawischnigg:

    nuqneH

    weiss jemand, ob es irgendeinen Browser gibt, im dem ein Eventhandler implementiert ist, der auslöst, wenn ein Objekt sichtbar wird?
    Also zB anzuwenden auf einen Bereich, der vorher mit "visibility:hidden" oder "display:none" auf unsichtbar gesetzt wurde und der durch irgendeinen Umstand sichtbar wird?

    Wenn „irgendein Umstand“ mal nicht ein Event ist! Warum hängst du dich nicht daran?

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
    1. Hi there,

      Wenn „irgendein Umstand“ mal nicht ein Event ist! Warum hängst du dich nicht daran?

      Ja eh, es war so nur etwas mühsamer...;)