login  Naam:   Wachtwoord: 
Registreer je!
 Forum

JQuery AND ThickBox probleem (Opgelost)

Offline Martijn2008 - 14/10/2008 18:10 (laatste wijziging 14/10/2008 18:14)
Avatar van Martijn2008PHP beginner Ik maak gebruik van JQuery en ThickBox. Thickbox is ongeveer hetzelfde idee als Lightbox2.

Het werkt , maar op het moment als er een ajax request naar de server wordt verzonden werkt Thickbox daarna niet meer(de pagina is dus geladen met behulp van ajax) . Deze ajax request doe ik met behulp van de volgende code:
  1. <script type="text/javascript">
  2. function load(id) {
  3. $("#ajax").load("ajax.php?id="+id+"");
  4. }
  5. </script>


Als je nu op een afbeelding klikt, opent hij deze afbeelding op een andere pagina, en dus niet meer met behulp van ThickBox wat juist mijn bedoeling is. Weet iemand misschien hoe ik dit probleem kan verhelpen? 

9 antwoorden

Gesponsorde links
Offline Stijn - 14/10/2008 21:12
Avatar van Stijn PHP expert Thickbox zal bij het laden van de pagina de pagina doorlopen en alle thickbox elementen "activeren". Nu vindt hij er geen en alle content die achteraf ingeladen wordt gaat hij niet overlopen. Het punt is dat je die Ajax moet weglaten of gewoon thickbox opnieuw inladen.
Offline vinTage - 14/10/2008 21:17
Avatar van vinTage Nieuw lid geen idee met jquery, maar je zal evalScripts = true of iets in die trent kunnen gebruiken in je load.
Offline BramBo - 14/10/2008 23:18
Avatar van BramBo JS gevorderde Wat wordt er geladen bij de ajax call? afbeeldingen, of Thickbox zelf ook?

Als het slecht afbeeldingen zijn kun je gewoon een nieuwe 'init draaien', dus:
  1. tb_init('a.thickbox, area.thickbox, input.thickbox');
Offline Martijn2008 - 15/10/2008 19:18
Avatar van Martijn2008 PHP beginner Bedankt voor al jullie reacties, het probleem is nu zo goed als verholpen. Heb het idee van BramBo toegepast, maar nu heb ik nog een ander probleempje met ThickBox. Als ik nu tussen de pagina's swap(ajax requests), krijg ik op een gegeven moment de afbeeldingen dubbel in ThickBox !
Offline BramBo - 15/10/2008 21:01
Avatar van BramBo JS gevorderde wat bedoel je precies?

wellicht dien je tb_remove() even uit te voeren voordat je een nieuwe init doet..
Offline Martijn2008 - 17/10/2008 09:45
Avatar van Martijn2008 PHP beginner Nou ik bedoel dat ik de images dubbel in ThickBox krijg, wanneer ik ajax gegenereerde pagina's gebruik. Waarschijnlijk bedoel je de juiste functie, maar ik heb geen idee hoe ik dat moet gebruiken in Javascript in combinatie met JQuery. Heb je misschien een voorbeeldje ?
Offline BramBo - 20/10/2008 12:52
Avatar van BramBo JS gevorderde Voordat je de init opnieuw draait de tb_remove() uitvoeren:
  1. tb_remove();
  2. tb_init('a.thickbox, area.thickbox, input.thickbox');
Offline Joey_K - 31/03/2009 22:21
Avatar van Joey_K Nieuw lid Hey,

Ik zag dit, maar ik denk dat tb_remove() niet doet wat jij denkt. Volgens mij is tb_remove() gemaakt om gewoon de popup terug te doen verwijderen.

Ik heb een beter oplossing gevonden op deze blog:
http://ninetyni...ge-by-ajax/

Bij deze oplossing wordt effectief alle click-events weggehaald van alle .thickbox elementen.

Joey
Offline Koen - 31/03/2009 22:27
Avatar van Koen PHP expert Kan best, maar dit topic is al een half jaar oud...
*opgelost*
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.202s