Javascript Fehler

  • Hola,

    um meine Flickr-Bilder im Zufallsmodus anzeigen zu lassen, habe ich mir aus diversen Quellen eine Javascript-Funktion zusammen geklöppelt:


    Leider sehen einige meiner Nutzer (meist mit Windows Vista und Firefox 2) folgenden Fehlercode oben im Header:

    Code
    "); } // --!>

    Ich bin nicht der größte Javascripter der Welt, könnte mir mal jemand sagen, wo hier die Fehlerquelle liegt?

    Mein Blog ist hier zu finden: AMY & PINK

    Danke, Marcel

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Script im Script geht auch nicht!

    Sollte so sein ([COLOR=Blue]und zwar alle, die im write() vorkommen, nur nochmal als Ergänzung.[/COLOR]):

    Code
    document.write("[B]<scr"+"ipt[/B] type=\"text/javascript\" src=\" ...

    sonst interpretieren das einige Browser.

  • Ok, vielen vielen Dank. Hab es gleich ausprobiert und es scheint zu funktionieren. Weder bei mir, noch bei getesteten Browsern bei Browsershots.org erscheint die Fehlermeldung. Ich hoffe es gibt keinen der mir das Gegenteil bestätigen kann ;)

    Nochmals danke.

  • Also hab jetzt durch einen Leser gehört, dass es mein Layout im Opera total zerfetzt, was stimmt denn mit dem Code nicht?

  • Also ein Bild davon ist hier zu finden. Wenn ich den oberen Code rausnehme, schnurrt Opera wie ein Kätzchen, sobald ich ihn einfüge, zerfleischt er mein Layout.

    Eigentlich will ich nur, dass wirklich zufällige Bilder aus meinen gesamten Flickr-Album angezeigt werden, da der normale Flickr-Badge-Code nur die letzten Alben berücksichtigt.

  • Also Flickr selbst gibt nur diesen Code aus:

    Code
    <div id="flickr_badge_uber_wrapper"><a href="http://www.flickr.com" id="flickr_www">www.<strong style="color:#3993ff">flick<span style="color:#ff1c92">r</span></strong>.com</a><div id="flickr_badge_wrapper">
    <script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?count=10&display=random&size=s&layout=x&source=user&user=87869284%40N00"></script>
    </div></div>

    Das wäre ja gut und schön, wenn er auch wie versprochen wirklich ALLE Fotos berücksichtigen würde, tut er aber nicht, sondern gibt nur zufällige der zuletzt hochgeladenen Alben aus.. Also wollte ich mit meinem Code, dass er aus allen angegeben Alben immer eins rauszieht und anzeigt.

  • Also Flickr antworted auf die Scriptanfrage mit folgenden Script:

    Dieses erzeugt eine Menge mehr <div> an Ort und Stelle mit den Bildern drin. Da du aber keinen Container um dein Script hast, kann es sein, das alle diese Divs dann "wegfloaten".
    Nicht umsonst haben die ein Container drum:

    Code
    [COLOR=Red]<div id="flickr_badge_uber_wrapper"><a href="http://www.flickr.com" id="flickr_www">www.<strong style="color:#3993ff">flick<span style="color:#ff1c92">r</span></strong>.com</a><div id="flickr_badge_wrapper">[/COLOR]
    <script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?count=10&display=random&size=s&layout=x&source=user&user=87869284%40N00"></script>
    [COLOR=Red] </div></div>[/COLOR]

    Bau selbst mal einen Container Div drum, den du dann stylest.

  • Hm, ok an dem Code scheint's nicht zu liegen, selbst wenn ich nur

    Code
    <script type="text/javascript"><!--  // --!></script>

    stehen hab, zerreisst Opera die Seite, bei kompletter Entfernung zeigt er die Seite wieder schön an. Ähm hallo?

    PS: Zur Ergänzung, ich hab das Script jetzt statt im Header in der Sidebar eingefügt, jetzt zeigt Opera zwar die Seite schön an, aber mit dem Code kann er gar nichts anfangen, anders als Safari, der die Flickr-Bilder wie gewohnt anzeigt, also langsam zweifle ich an mir selbst..

    PPS: Öhm.. jetzt scheint's zu klappen, hab einfach das "!" aus "--!>" rausgenommen.. also wenn das jetzt echt geht.. dann aber...

  • JavaScript-code in HTML-Kommentare einzuschließen ist in modernen Browsern nicht mehr nötig. Allerdings solltest du bei XHTML den Script-Bereich explizit als CDATA auszeichnen, in XHTML ist das sonst standardmäßig PCDATA (d.h. geparster HTML-Code), und da machen dann HTML-Sonderzeichen wie '<' und '&' Probleme.
    SELFHTML: HTML/XHTML / XHTML und HTML / Unterschiede zwischen XHTML und HTML

    Code
    <script type="text/javascript">
    // <![CDATA[ 
      /* JavaScript-Kommentar: jetzt folgt ein kleines Script */
      if (parseInt(navigator.appVersion) < 5)
        alert("Oh, ein sehr alter Browser");
      /* und damit ist das Script auch schon zu ende */
    // ]]> 
    </script>

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!