ie interpretiert js code falsch

Dieses Thema im Forum "Webentwicklung" wurde erstellt von encud, 22. Mai 2007 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 22. Mai 2007
    moin^^
    ich hab n prob mittem ie...
    mit mozilla funktioniert das ohne probleme aber mit dem ie...
    naja also das der quelltext:
    javascript:
    HTML:
    function layer(wo) {
    if(document.getElementById(wo).style.display == 'none')
    document.getElementById(wo).style.display = 'block';
    else document.getElementById(wo).style.display = 'none';
    }
    
    function hover()
    {
    if(document.musik.src == "http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png") document.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png";
    else document.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png";
    }
    
    html:
    HTML:
    <a href="javascript: layer('musik');" onclick="hover()"><img src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png" title="Musik" alt="Musik" name="musik"></a> <div id="musik" style="display:none;" class="layer">
    <table style="border: 1px solid rgb(255, 255, 255);" border="0" cellpadding="0" cellspacing="0">
    
     <tbody>
    
     <tr>
    
     <td style="border: 1px solid rgb(255, 255, 255); background-image: url(pictures/dropdownborder.jpg); height: 25px;">Musikplayer: Saufen</td>
    
     </tr>
    
     <tr>
    
     <td style="border: 1px solid rgb(255, 255, 255); background-color: rgb(0, 0, 0); padding-top: 10px; padding-left: 10px;">
    <script src="http://encud.kilu.de/ballacornys.de.vu/specials/audio-player.js" type="text/javascript"></script>
    <object type="application/x-shockwave-flash" data="http://encud.kilu.de/ballacornys.de.vu/specials/player.swf" id="audioplayer1" height="24" width="290">
    <param name="movie" value="http://encud.kilu.de/ballacornys.de.vu/specials/player.swf">
    <param name="FlashVars" value="playerID=1&amp;soundFile=http://encud.kilu.de/ballacornys.de.vu/specials/saufen.mp3">
    <param name="quality" value="high">
    <param name="menu" value="false">
    <param name="wmode" value="transparent">
    </object>
    <center><a href="javascript:NewWindow('musik/index.htm','MusiPlayer','300','10','custom','front');">Popup</a></center>
    </td>
    
     </tr>
    
     </tbody>
    </table></div>
    so sieht es im firefox explorer aus:
    Bild=down!

    und so im ie(auch im 7er):
    Bild=down!
    passiert halt nix nur das icon geht weg, obwohl es sich ändern sollte...
    kann mir einer sagen was man machen kann oder ob es vllt noch andere fehler gebt???

    vllt noch mal der link zur hp selbst zum gucken:http://ballacornys.de.vu/


    thx encud
     
  2. 23. Mai 2007
    AW: ie interpretiert js code falsch

    hast du die funktion "hover" bewusst in der funktion "layer" drin verschachtelt?

    wüsste nicht, dass das geht. vielleicht liegts da dran.
     
  3. 24. Mai 2007
    AW: ie interpretiert js code falsch

    hmm das verstehe ich nicht ganz... also ist doch die funktion "musik" im "layer" verschachtelt, oder nicht?? oder habe ich dich jetzt falsch verstanden???
     
  4. 24. Mai 2007
    AW: ie interpretiert js code falsch

    ne, du hast eine funktion innerhalb einer anderen funktion drin. ich weiß, nicht ob das egal ist.

    aber versuch es mal so:

    HTML:
    
    function layer(wo) {
    if(document.getElementById(wo).style.display == 'none')
    document.getElementById(wo).style.display = 'block';
    else document.getElementById(wo).style.display = 'none';
    
    hover();
    }
    
    
    function hover()
    {
    if(document.musik.src == "http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png") document.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png";
    else document.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png";
    }
    
    

    Nachdem die hover-FUnktion jetzt automatisch ausgeführt wird, kannst du das onclick="hover()" aus dem HTML löschen. Vielleicht hat das Probleme verursacht.

    Übrigens ist JavaScript case-sensitive, daher müsstest du onClick mit großem C schreiben, vielleicht ist es auch das gewesen.
     
  5. 24. Mai 2007
    AW: ie interpretiert js code falsch

    also, auf seiner seite hat er für jede funktion eine eigene .js (...) gemacht. er hat das wohl hier nur falsch reinkopiert.
     
  6. 24. Mai 2007
    AW: ie interpretiert js code falsch

    ohh ja sry, aber habe mich da nur vertippt
    also funkioniert immer noch nicht, trotzdem danke!

    edit:
    so ist es! da war wer schneller als ich^^

    und das hat die lösung leider auch nicht herbeigeschaffen
     
  7. 24. Mai 2007
    AW: ie interpretiert js code falsch

    Also der erste Fehler den ich seh ...
    HTML:
    <script src="http://encud.kilu.de/ballacornys.de.vu/specials/audio-player.js" type="text/javascript"></script>
    
    So hat der Scripttag meiner Meinung nach auszusehen. Ansonsten was spuckt denn der IE fürn Fehler aus?
     
  8. 24. Mai 2007
    AW: ie interpretiert js code falsch

    ok hab ich mal geändert, aber mach auch keinen unterschied...
    und fehler... eigentlich agr keinen... unten links seht dann halt fertig oder kann man sonst noch irgendwo fehlermeldungen sehen?

    kannst dir ja auch selber ein bild von machen wenn du möchtest: http://ballacornys.de.vu/

    edit: ich habe gerade was fest gestellt: wenn ich mir firefox öffne, da habe ich unten "firebug" drin, vllt kennt das einer und der gibt immer volgenden fehler aus wenn ich da drauf drücke: "uncaught exception: Die Erlaubnis für den Aufruf der Methode Location.toString wurde verweigert" vllt trägt das was zur lösung bei...
     
  9. 25. Mai 2007
    AW: ie interpretiert js code falsch

    seamonkey meldet auch noch folgendes:

    .dropdown {
    border-collapse:collapse;
    border:1px solid #fff;
    padding: 0px;
    spacing: 0px;
    }

    spacing gibts net

    aja transparenz in .png (weils 100%ig die nächste frge geworden wär) wird vom ie net unterstützt.
     
  10. 25. Mai 2007
    AW: ie interpretiert js code falsch

    gib dem bild mal eine id und sprech es über getElementById an statt über document.musik
     
  11. 25. Mai 2007
    AW: ie interpretiert js code falsch

    ok hab ich geändert, aber im ie 7 gehen doch transparente .png grafiken oder net aber daran dürfte es ja eigentlich eh nicht liegen oder nicht???

    ok hmm nur wie geht das genau??? hab das jetzt so ausprobiert aber das geht net so ganz :
    HTML:
    function hover()
    {
    if(getElementById.musik.src == "http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png") getElementById.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png";
    else getElementById.musik.src="http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png";
    }
    HTML:
    <a href="javascript: layer('musik');" onclick="hover()"><img src="pictures/musik.png" title="Musik" alt="Musik" id="musik"></a>
     
  12. 25. Mai 2007
    AW: ie interpretiert js code falsch

    HTML:
    <a href="javascript: layer('musik');hover();"><img src="pictures/musik.png" title="Musik" alt="Musik" id="musik"></a>
    Code:
    function hover()
    {
    if(document.getElementById('musik').src == "http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png") document.getElementById('musik').src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png";
    else document.getElementById('musik').src="http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png";
    }
     
  13. 25. Mai 2007
    AW: ie interpretiert js code falsch

    so wie es da steht geht es selbst im firefox net
     
  14. 25. Mai 2007
    AW: ie interpretiert js code falsch

    HTML:
    <script language="javascript">
    function hover()
    {
     var imgsrc = document.getElementById('musik');
     imgsrc.src = (imgsrc.src == 'http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png') ? 'http://encud.kilu.de/ballacornys.de.vu/pictures/stop.png' : 'http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png';
    }
    </script>
    <a href="javascript:hover();"><img src="http://encud.kilu.de/ballacornys.de.vu/pictures/musik.png" title="Musik" alt="Musik" id="musik"></a>
    geht im ie und im mozilla
     
  15. 25. Mai 2007
    AW: ie interpretiert js code falsch

    ok, also alleine gemacht geht es auch, aber mit dem "layer('musik');" zusammen funtioniert es nicht! demnach wird es wohl damit zu tun haben was??

    aber was mir aufgefallen ist: ich habe ja unten 3 bilder, eins mit hover und 2 ohne! bei einem ohne und einem mit hover geht es nicht nur beim letzten! ach war schon on^^ naja noch besser: http://ballacornys.de.vu/
     
  16. 25. Mai 2007
    AW: ie interpretiert js code falsch

    ?

    versuch mal bei der funktion layer das "block" in " " zu ändern. ansonsten kanns auch am quelltext liegen, da der wie immer unter aller sau is.
     
  17. 25. Mai 2007
    AW: ie interpretiert js code falsch

    hat auch keinen unterschie gemacht... und warum unter aller sau????
     
  18. 25. Mai 2007
    AW: ie interpretiert js code falsch

    Also nochmal von vorne, erkläre mir bitte so genau es geht, was du machen willst, und ich werd dir den script wörtlich geben. ICh hab nämlich irgendwie das gefühl dass du uns entweder nicht so recht folgen kannst, oder wir aneinander vorbei reden ....

    Du möchtest beim "drüber" fahren oder klicken, dass ein html-element mit inhalt sichtbar wird? Und auf den nächsten Klick wieder unsichtbar? Mann mann, der Quellcode ist echt murksig, wenn du lesbarer coden würdest wäre es wahrscheinlich schon gelöst. Also ich würde es so machen. (mom bin noch am tippen)

    HTML:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
     <script type="text/javascript">
     //<![CDATA[
     /**
     * function makeLayerVisible(Id)
     *
     * toggles the visibility of the html objekt with Id.
     *
     * @return void
     */
     function makeLayerVisible(Id) {
     var object = document.getElementById(Id);
    
     object.style.display = (object.style.display == 'none') ? 'block' : 'none';
     }//end - function makeLayerVisible(Id)
    
     /**
     * function makeLayerVisible(Id)
     *
     * Changes the image of the music link.
     *
     * @return void
     */
     function changeMusicImage() {
     var object = document.getElementById('MusicImage');
    
     object.src = (object.src == './pictues/musik.png') ? './pictues/stop.png' : './pictues/musik.png';
     }//end - function changeMusicImage()
     //]]>
     </script>
     <title>Scripttest</title>
     </head>
     <body>
     <a href="./login.html" onclick="makeLayerVisible('login');return false;">
     <img alt="Login" src="./pictures/login.png" title="Login">
     </a>
     <div class="layer" id="login" style="display: none;">
     <!--Inhalt-->
     </div>
     <!--Noch mehr Inhalt-->
     <a href="./musik.html" onclick="makeLayerVisible('musik');changeMusicImage();return false;">
     <img alt="Musik" id="MusicImage" src="./pictures/musik.png" title="Musik">
     </a>
     <div class="layer" id="musik" style="display: none;">
     sdfsdfsd
     </div>
     </body>
    </html>
    
    Habs jetzt nicht gestest, aber mit bestem Gewissen geschrieben.
     
  19. 26. Mai 2007
    AW: ie interpretiert js code falsch

    also, ich möchte gerne:
    -wenn ich auf das symbol "musik" klicke der button geändert wird, also ein anderes bild hin kommt und wenn man wieder drauf drückt wieder das alte kommt, also "musik"
    -wenn ich auf diesen button klicke, ein fenster auf geht(in dropdown effekt)
    -wenn man auf das login symbol klickt soll sich nichts ändern, sondern einfach nur ein neues fenster öffnet...

    also eigentlich funktionert das ja alles schon so wie es soll, nur halt nicht im internet explorer
    falls de das auch net verstanden habe solltest, dann kannste ja mal auf die hp gehen: http://ballacornys.de.vu/ und dir das einfach mal angucken unten rechts die drei symbole...

    und mit dem quelltext den du mir geschrieben hast kann ich leider nicht all zu viel anfangen, kann aber auch sein weil ich zu blöde für bin^^ trotzdem schonmal großen dank!!!!

    gruß encud
     
  20. 26. Mai 2007
    AW: ie interpretiert js code falsch

    Also deine Seite funktioniert nicht im Ansatz bei Opera! und Mein Quelltext ist genau was du wolltest, schaust dir doch einfach erstmal ordentlich an bevor du meckerst.

    Dafür hab ich doch sogar die Kommentare geschrieben,
    die Funktion function makeLayerVisible(Id) macht ein Element mit einer bestimmten ID sichtbar.

    Die Funktion changeMusicImage() ändert nach deinem Quellcode das Musikbild.

    Ist doch nicht so schwer....
     
  21. 26. Mai 2007
    AW: ie interpretiert js code falsch

    ok, also mit opera habe ich es nicht getestet, hab ich leider nicht insalliert, aber gut das des sagst! kurze frage dazu, geht dass mit opera genau so wenig wie mit dem ie???

    und sry wenn es do rüber gekommen ist, aber sollte echt kein meckern sein, nur ich habe das eben einfach mal in eine .htm datei gespeichert und da hat es nicht funktioniert, aber habe ja selber gesagt kann auch an mir liegen^^ aber wenn du sagst das es geht dann gucke ich noch einmal genauer einen moment^^

    edit: ja also sry aber irgendwie wenn ich das genau so abspeichere, dann passiert da nix ich werde dann immer auf die seite: musik.htm weiter geleitet,und eigentlich will ich ja nicht auf ne andere seite sondern nur das da eine art menu kommt wo ich dann was reins schreiben kann was dann wieder verschwindet wenn man nochmal auf den musik botton klickt...
     
  22. 26. Mai 2007
    AW: ie interpretiert js code falsch

    Jo Kommando zurück,mir ist da ein Flüchtigkeitsfehler aufgefallen. Ich hab die JS Funktionen nachdem ich fertig war mit tippen nochmal umbenannt,daher der mistake.
     
  23. 26. Mai 2007
    AW: ie interpretiert js code falsch

    Soich hab jetzt noch Testweise etwas in das "dropin" -div von musik gelegt ...und müsste so eigentlich laufen.

    Bei mir läuft es ohne Probs

    HTML:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
     <script type="text/javascript">
     //<![CDATA[
     /**
     * function makeLayerVisible(Id)
     *
     * toggles the visibility of the html objekt with Id.
     *
     * @return void
     */
     function makeLayerVisible(Id) {
     var object = document.getElementById(Id);
    
     object.style.display = (object.style.display == 'none') ? 'block' : 'none';
     }//end - function makeLayerVisible(Id)
    
     /**
     * function makeLayerVisible(Id)
     *
     * Changes the image of the music link.
     *
     * @return void
     */
     function changeMusicImage() {
     var object = document.getElementById('MusicImage');
    
     object.src = (object.src == './pictues/musik.png') ? './pictues/stop.png' : './pictues/musik.png';
     }//end - function changeMusicImage()
     //]]>
     </script>
     <title>Scripttest</title>
     </head>
     <body>
     <a href="./login.html" onclick="makeLayerVisible('login');return false;">
     <img alt="Login" src="./pictures/login.png" title="Login">
     </a>
     <div class="layer" id="login" style="display: none;">
     <!--Inhalt-->
     </div>
     <!--Noch mehr Inhalt-->
     <a href="./musik.html" onclick="makeLayerVisible('musik');changeMusicImage();return false;">
     <img alt="Musik" id="MusicImage" src="./pictures/musik.png" title="Musik">
     </a>
     <div class="layer" id="musik" style="display: none;">
     sdfsdfsd
     </div>
     </body>
    </html>
    
    PS: Wenn javascript aus ist, wird derjenige zur eigentlich seite weitergeleitet.
     
  24. 26. Mai 2007
    AW: ie interpretiert js code falsch

    ok, also das funtkionert bei mir auch ich werd mal versuchen es in meine hp einzubauen, wenn ich noch irgendwie probleme habe dann melde ich mich!
     
  25. 26. Mai 2007
    AW: ie interpretiert js code falsch

    soo als erstes nochmal ein großes dankeschön für die hilfe!!! soweit funktioniert es auch alles, nur das problem ist der hover effekt! wenn ich beim ersten klicke kommt kein hover beim 2. mal dann schon, was dann leider bedeutet, das immer das bild da sein soll welches eigentlich gerade nicht da sein soll... könntest du das vllt noch mal irgendwie hinbiegen???

    edit: lol sry muss mich verbessern! komischer weise ist das nur im ofline modus so, wenn ich das hoch lade dann klapt alles wie es soll und von daher ist es ja egal also danke an all eure hilfe!!!!!!
     
  26. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.