tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
867
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    qde qde ist offline Mitglied Silber
    Registriert seit
    Apr 2005
    Beiträge
    66
    Hi,

    ich stehe mal wieder vor einem Problem. Wenn ich es nicht müsste, würde ich einen großen Bogen um diesen ganzen Kram machen, aber es gibt halt leider kein entrinnen...

    ich verlinke auf einer Seite eine Url, die in einer Thickbox angezeigt werden soll. Das ganze sieht so aus:
    HTML-Code:
    <li><a href="javascript:tb_show('Test','../Views/Layouts/test.htm?height=500&width=600&articleId=1','');" class="thickbox" title="">Ärger um Engelhöfe</a></li>
    die articleId gibt an, welche Daten angezeigt werden sollen (hat also nichts mit Thickbox und dem Problem zu tun).

    meine Test.htm sieht so aus:
    HTML-Code:
    <html>
    <head><script type="text/javascript" src="http://meineurl/jquery-1.2.6.js"></script> </head>
    <body>
     <script type="text/javascript">
    jQuery(document).ready(
    	function()
    	{		
    alert('ja alles super jQuery funktioniert mit thickbox');
    });
    </script>
    </body>
    </html>
    Wenn ich die Seite (test.htm) gehe, dann wird das alert ohne probleme ausgegeben. Über den Thickboxlink passiert allerdings im Firefox überhaupt nichts.

    jQuery.noConflict(); bewirkt nichts.

    Was kann ich tun? Warum werden einem eigentlich bei jedem noch so kleinen Arbeitsschritt Steine in den Weg gelegt? Es kann doch wirklich nicht wahr sein, dass ich allein schon bei der Prototypentwicklung immer wieder durch solch unerklärliches Fehlverhalten aufgehalten werde.

    Für Hinweise wäre ich sehr dankbar!
    Geändert von qde (10.12.08 um 11:00 Uhr)
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    erster Hinweis: JQuery und Thickbox funktionieren ganz sicher zusammen, denn Thickbox basiert auf JQuery

    Das Problem in diesem Fall dürfte in der thickbox.js liegen:
    Code :
    1
    2
    3
    4
    5
    
    [B]$(document).ready[/B](function(){   
        tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
        imgLoader = new Image();// preload image
        imgLoader.src = tb_pathToImage;
    });

    Dort wird auch der onload-Event des Dokumentes(das ist ja ]$(document).ready) bemüht....und höchstwahrscheinlich dein anderer Eventhandler "überschrieben".

    Lösung: schreibe deine anderen ready-Anweisungen in der thickbox.ja dazu
     

  3. #3
    qde qde ist offline Mitglied Silber
    Registriert seit
    Apr 2005
    Beiträge
    66
    Hi,

    na das ist ja peinlich. Dachte Thickbox basiert auf Prototype. Habe inzwischen schon zu viele Javascripte heruntergeladen.

    Leider funktioniert dein Lösungsansatz nicht. Ich habe zum Test einfach mal ein alert ausgegeben. Beim Aufruf der Seite mit dem Thickbox-Link wird das alert-Fenster noch ausgegeben, aber wenn ich auf den Link klicke, der die Seite dann in einer Thickbox anzeigt, kommt kein alert Fenster.
     

  4. #4
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Warum sollte da auch ein alert kommen... $(document).ready feuert beim onload und nicht beim Klick.
     

  5. #5
    qde qde ist offline Mitglied Silber
    Registriert seit
    Apr 2005
    Beiträge
    66
    Hallo Sven,

    wieso sollte es denn nicht kommen? Ich habe im Thickbox-Link schließlich angegeben, dass es sich um ein IFrame handeln soll.


    Jetzt habe ich folgenden Zustand:

    Wenn ich auf den Link klicke, wird das alert mit dem get-Parameter ausgegeben. Den jQuery.ready-Code habe ich in die Thickbox.js kopiert. Dort steht unter anderem auch das alert drin. Aber
    Code :
    1
    
    jQuery('#detail'+ jQuery(document).getUrlParam("articleId")).fadeIn('slow');
    wird komplett ignoriert.

    Das verwunderliche: Wenn ich auf den Link klicke, bekomme ich eine leere Seite. Aber wenn ich rechte maustaste/Aktueller Frame -> Frame in neuem Tab öffnen, dann wird das entsprechende Div eingeblendet. Da blick' nochmal einer durch....

    Ich hoffe jemand kann mir helfen.
     

Ähnliche Themen

  1. inline Label und Form Validator Funktionieren nicht zusammen
    Von matze93 im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 06.10.10, 11:49
  2. jQuery - Links in geladen div's funktionieren nicht
    Von haloman im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 23.08.09, 23:05
  3. Problem mit jQuery / Thickbox
    Von johnny_dub im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 22.05.09, 15:49
  4. thickbox /Jquery
    Von wachteldonk im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 28.03.08, 11:03
  5. Thickbox (jQuery) HTML PopUp
    Von Flextone im Forum Javascript & Ajax
    Antworten: 6
    Letzter Beitrag: 22.06.07, 10:59