IZI: Opacity IE

Hallo,

ich habe ein Problem mit dem filter opacity. Und zwar habe ich ein javascript erstellt das beim hovern eines links den hintergund auf einen niedrigeren Wert legt (opacity 20). Das lege ich anhand des bodys fest dem ich eine ID gegeben habe. gleichzeitig soll der link eine leere div box mit Inhalt füllen und diese Box soll von dem effekt nicht betroffen sein.

Versucht habe ich es mit:

  • Verschiedene z-Indexe (1 für body, 1001 für das div) einmal im css sowie einmal direkt im element des divs selbst.
  • den filter für das div-Element entsprechend höher gestellt (opacity 100), im css und einmal im div selbst
  • durch das javascript direkt nach der einstellung, dass der Body 20 opacity haben soll, das div beim element ID genommen und filter auf 100 gestellt.

Gibt es vll. eine Lösung für das Problem?

danke im vorraus :)

  1. Grüße,
    ich vermtue ja - allerdings
    1)was hat das mit JS zu tun?
    2)kannst du dich minimal geordneter ausdrücken? ich habe mehrer vermutungen zur interpreatation deine4r frage >_<
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
    1. 1)was hat das mit JS zu tun?

      Mit hovern meine ich den "onmouseover" Effekt von Javascript. Fahre ich mit der Maus über ein bestimmtes Objekt (Es muss nichtmals ein Link sein), erscheint eine Art Popupbox neben der Maus die Informationen anzeigt über den mit der Maus überfahrenen Inhalt. Die Popupbox verschwindet mit einem onmouseout.

      2)kannst du dich minimal geordneter ausdrücken? ich habe mehrer vermutungen zur interpreatation deiner frage >_<

      Ich habe wie oben beschrieben ein Objekt, bei dem ich wenn ich mit der Maus darüber fahre die Popupbox neben der Maus erscheint. Jetzt soll wenn dieses Ereignis eintritt der gesamte Hintergrund der Seite bis auf dieses Popup einen Transparenz Effekt erhalten. Diesen habe ich mit dem Microsoft-Filter realisiert und von der Normaleinstellung 100 auf 20 runtergeschraubt. Das Problem ist hierbei, dass wenn ich diesen Filter auf die Seite anwende, auch diese Popup Box diesen Filter Effekt erhält, obwohl es nicht erwünscht ist.
      Wie im ersten Beitrag beschrieben, habe ich versucht diesen Effekt zu umgehen was mir nicht gelungen ist.
      Ausprobiert habe ich:
      1.) Verschiedene z-index anwenden
      2.) Der Popupbox einen eigenen filter Wert zuzuweisen
      3.) Direkt in der Javascript Datei wo ich den Filter für den Hintergrund einstelle auch sofort für die Box einzustellen.

      Soeben habe ich noch ausprobiert:
      4.) Ein Div das sich um den gesamten Inhalt der Seite zieht außer der div-Box in die der Inhalt geladen wird.
      ->

      <body>  
       <div id='filter'>  
        Seitendesign, links etc.  
       </div>  
       <div id='POP'>  
        Leeres div in das per JS Daten geladen werden  
       </div>  
      </body>
      

      Funktioniert aber auch nicht. Vorher hatte ich dem body die ID Filter zugewiesen, aber da wurde eben auch die Popup Box unerwünschterweise mit dem Filter Effekt ausgezeichnet.

      Hoffe ist nun besser ^^ Thx

      1. Grüße,

        1)was hat das mit JS zu tun?
        Mit hovern meine ich den "onmouseover" Effekt von Javascript. Fahre ich mit der Maus über ein bestimmtes Objekt (Es muss nichtmals ein Link sein), erscheint eine Art Popupbox neben der Maus die Informationen anzeigt über den mit der Maus überfahrenen Inhalt. Die Popupbox verschwindet mit einem onmouseout.

        klar geht das mit JS - aber wieso? MUSS das JS sein auf kundenwunsch oder sonstwas?

        2)kannst du dich minimal geordneter ausdrücken? ich habe mehrer vermutungen zur interpreatation deiner frage >_<
        Ich habe wie oben beschrieben ein Objekt, bei dem ich wenn ich mit der Maus darüber fahre die Popupbox neben der Maus erscheint. Jetzt soll wenn dieses Ereignis eintritt der gesamte Hintergrund der Seite bis auf dieses Popup einen Transparenz Effekt erhalten. Diesen habe ich mit dem Microsoft-Filter realisiert und von der Normaleinstellung 100 auf 20 runtergeschraubt.

        dir ist schon klar, dass MSfilter MEHRHEIT der seitenbesucher im regen lassen, oder ist die seite nur für dich gedacht?
        JS für hovereffekte UND MSfilter sind ein derart abscheuliches Komplott, dass ich dir davon abrate. dafür könntest du direkt in webentwicklerhölle kommen.
        MFG
        bleicher

        --
        __________________________-

        FirefoxMyth
        1. klar geht das mit JS - aber wieso? MUSS das JS sein auf kundenwunsch oder sonstwas?

          Nein, ich finde JS einfach richtig cool, ich mag es sehr und will es besser kennenlernen.

          dir ist schon klar, dass MSfilter MEHRHEIT der seitenbesucher im regen lassen, oder ist die seite nur für dich gedacht?
          JS für hovereffekte UND MSfilter sind ein derart abscheuliches Komplott, dass ich dir davon abrate. dafür könntest du direkt in webentwicklerhölle kommen.

          Den JS Hovereffekt nutze ich lediglich um die Infobox erscheinen zu lassen die selbst von mir definiert wurde. MSFilter, ich arbeite auch mit Fx aber derzeit hänge ich erstmal beim IE der es nicht annimmt.

          1. Grüße,

            klar geht das mit JS - aber wieso? MUSS das JS sein auf kundenwunsch oder sonstwas?
            Nein, ich finde JS einfach richtig cool, ich mag es sehr und will es besser kennenlernen.

            wenn du waffen magst, fängst du aber auch nciht an deine katzen z erschießen, oder? JS ist NICHT für sowas gedacht, du kansnt es machen, das ist aber enormes overkill und zieeemlich sinnlos

            dir ist schon klar, dass MSfilter MEHRHEIT der seitenbesucher im regen lassen, oder ist die seite nur für dich gedacht?
            JS für hovereffekte UND MSfilter sind ein derart abscheuliches Komplott, dass ich dir davon abrate. dafür könntest du direkt in webentwicklerhölle kommen.
            Den JS Hovereffekt nutze ich lediglich um die Infobox erscheinen zu lassen die selbst von mir definiert wurde. MSFilter, ich arbeite auch mit Fx aber derzeit hänge ich erstmal beim IE der es nicht annimmt.

            1)vergiss IE für den anfang - mach es "nach Regeln", syntax und struktur müssen stimmen, DANACH kannst du dir krücken und stützräder für den krüppIEl einbauen

            2)JS ist für interaktivität und zusatzfunktionen, NICHT für darstellung.
            infobox "erscheinen" ist keine transparenzsache.
            das ist eine frage von display" eigenschaft der css, es geht total ohne jS, hier transparenz oder JS anzuwenden ist wie im Beton zu tauchen - machbar aber keine gute idee.
            bitte setz dich VOR JS mit css und html auseinander, JS ist ein WERKZEUG mit dem du die Seite manipulierst, aber erst musst du die eigentliche Seite machen können.

            ah ja - und bitte schwör den satanischen IE ab, installier dir Opera oder CHrome (Opera hat SUPER tools zum entwickeln von JS scripts - fehlersuche , strukturanzeige, variablen etc. ich arbeite damit^^)

            denk bitte über das ganze nach - ich zeige dir auch gern wie man tooltips/infobox mit CSS macht, wenn es dir so wichtig ist
            MFG
            bleicher

            --
            __________________________-

            FirefoxMyth
            1. denk bitte über das ganze nach - ich zeige dir auch gern wie man tooltips/infobox mit CSS macht, wenn es dir so wichtig ist

              Mir ist das wichtig, mit zentrierung genau in der mitte beim klicken oder direktem erscheinen neben dem Link beim hovern. Da der IE aber den größten Teil der User ausmacht die ihn nutzten, kann ich ihn nicht auslassen, darin liegt das problem. Ich habe es anfangs auch mit CSS probiert, doch es scheiterte eben auch an dem IE was im Fx tadellos funktioniert hat.
              Ich habe ein Design bei dem durch eine ajax function inhalte in die divs geladen werden. Der IE kann aber da heraus keine css eigenschaften anzeigen bzw. es liegt generell an den eingeschränkten eigenschaften des IE. Er kennt ja nichtmal fixed um das div sprengen zu können.

              Ich habe übrigends Fx, Opera und IE. Chrome nutze ich nicht was auch wohl wegen seiner fast 100% anlehnung an das wc3 unnötig ist. Ich möchte nicht dass google mich noch mehr ausspioniert als es zurzeit überall der fall ist. Fx finde ich auch schon schlimm weil die mit google zusammenarbeiten.

              1. Hallo Izi,

                Transparenz ist echt was feines, lässt sich natürlich auch mit CSS realisieren aber nicht so kurz wie es mit Javascript der Fall ist und nicht so wie Du es hier ausgedrückt hast.

                Du möchtest den gesamten Inhalt transparent gestalten bis auf das Objekt, das aktiviert wurde. Es gibt für das Problem zwei Lösungswege wobei der erstere für mich der sparsamere wäre, auch wenn es nur einige Byts sind.

                Du sprichst jedes Element einzeln an, d.H. du nutzt:

                1.)
                document.getelementsByTagName("div")[i].filter = (bla)
                => Jedes Element mit div wird angesprochen. Seiten werden überwiegend mit divs gestaltet. Deine Infobox müsstest du dann eventuell in ein <span id='Infobox'> </span> geben oder etwas in der Art, damit es nicht betroffen ist.

                oder

                2.)
                document.getelementsByName("transparenz")[i].filter = (bla)
                => Jedes Element mit name='transparenz' ausstatten, in normalfall reichen die Hauptelemente die du damit einkesselst. Wenn nun in einer Tabelle noch ein p mit nem style definiert ist, dann wird da auch der transparenzeffekt erscheinen (IE).

                Beide Möglichkeiten bedürfen einer Schleife für das i das eine Nummer braucht, da die Elemente nach der Reihe (der Beschriftung) angesprochen werden. Wenn du die Anzahl der divs kennst und die sich auch nicht ändern von Seite zu Seite, dann nimm eine for-Schleife. Alles was davon abweicht erfüllt die while-Schleife.

                Für Fx sieht es dann so aus:
                document.getelementsByTagName("div")[i].opacity = "Wert";

                Grüße,
                Roland