Java Script Probleme mit Fancybox und XMLHttpRequest
Ich steh vorm Berg. Aber ich weiss, wo mir geholfen wird
Liebe Alle.
1. Ich habe eine Seite: index.php
2. in dieser index.php gibt es im Header JS Code, welcher auf gewisse Links die mit <p id="lightboxid"> link </p> eingepackt, eine Fancybox erstellt:
4. In der index.php gibt es ein DIV mit der ID "changediv"
5. In diesem DIV ersetze ich den Inhalt anhand JS mit dem von einer PHP Seite (B = xipindex.php) welche im Hintergrund geladen wird mit folgendem Code:
6. In dem Inhalt welcher von B zurückgeliefert wird, steckt ein Link welcher wiederum in ein <p> eingepackt ist:<p id=\"lightmerkliste\"> <a href="zielseite.php">Klick mich</a></p>.
Alles klappt. Nur geht bei einem Klick auf den in 6. beschriebenen Link keine Fancybox auf. Und ich weiss nicht mehr weiter. Anzumerken gibt es noch, das alle anderen verwendeten Fancyboxen tiptop funktionieren. Hoffe ihr versteht wo der Schuh drückt. Und da ich von JS nicht wirklich die Ahnung habe geschweige mit den Frameworks, bin ich doch etwas am Anschlag und hoffe auf Hilfe von den Profis.
Liebe Grüsse und vielen Dank!
Liebe Alle.
1. Ich habe eine Seite: index.php
2. in dieser index.php gibt es im Header JS Code, welcher auf gewisse Links die mit <p id="lightboxid"> link </p> eingepackt, eine Fancybox erstellt:
<script type="text/javascript" src="class/fancybox/jquery-1.2.3.pack.js"></script>
<script type="text/javascript" src="class/fancybox/jquery.fancybox-1.0.0.js"></script>
<script type="text/javascript" src="class/fancybox/jquery.pngFix.pack.js"></script>
<link rel="stylesheet" href="class/fancybox/fancy.css" type="text/css" media="screen">
<script type="text/javascript">
$(document).ready(function() {
$("p#Bild1 a").fancybox();
$("p#lightmerkliste a").fancybox();
$("a#lightmerkliste").fancybox({
'zoomSpeedIn':10,
'zoomSpeedOut':10
});
});
5. In diesem DIV ersetze ich den Inhalt anhand JS mit dem von einer PHP Seite (B = xipindex.php) welche im Hintergrund geladen wird mit folgendem Code:
function sendRequest(cli) {
var req;
try {
req = window.XMLHttpRequest?new XMLHttpRequest():
new ActiveXObject("Microsoft.XMLHTTP");
document.getElementById('myContent').innerHTML = '<img src="img/preloader.gif"><br />ULL Live-Check für Nummer: '+cli+'<br /> in Bearbeitung...';
} catch (e) {
//Kein AJAX Support
}
req.onreadystatechange = function() {
if ((req.readyState == 4) && (req.status == 200)) {
document.getElementById('myContent').innerHTML = req.responseText;
}
};
var id = cli;
req.open('post', 'xipindex.php');
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
req.send('cli='+ id);
}
Alles klappt. Nur geht bei einem Klick auf den in 6. beschriebenen Link keine Fancybox auf. Und ich weiss nicht mehr weiter. Anzumerken gibt es noch, das alle anderen verwendeten Fancyboxen tiptop funktionieren. Hoffe ihr versteht wo der Schuh drückt. Und da ich von JS nicht wirklich die Ahnung habe geschweige mit den Frameworks, bin ich doch etwas am Anschlag und hoffe auf Hilfe von den Profis.
Liebe Grüsse und vielen Dank!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 128072
Url: https://administrator.de/contentid/128072
Ausgedruckt am: 15.11.2024 um 23:11 Uhr
7 Kommentare
Neuester Kommentar
hallo,
dein Problem ist ganz einfach zu lösen.
du musst deiner Fancybox doch auch sagen das da jetzt ein neuer Link da ist, der doch auch
von ihr behandelt werden sollte.
Sprich schau dir mal an was Fancybox in der Initialiserung macht.
Edit:
wenn ichs richtig gesehen habe dann dürfte es sich um die _start function handeln, welche
sich alle elemente holt...
dein Problem ist ganz einfach zu lösen.
du musst deiner Fancybox doch auch sagen das da jetzt ein neuer Link da ist, der doch auch
von ihr behandelt werden sollte.
Sprich schau dir mal an was Fancybox in der Initialiserung macht.
Edit:
wenn ichs richtig gesehen habe dann dürfte es sich um die _start function handeln, welche
sich alle elemente holt...
Mal in einer Kurzfassung:
Wieso sollte die neue lightbox nun eine fancybox sein ? (die wurde doch nicht umgewandelt !)
Ändere also einfach die Reihenfolge:
~Arano
- alle lightboxen in fancyboxen umwandeln
- eine neue lightbox erstellen
Wieso sollte die neue lightbox nun eine fancybox sein ? (die wurde doch nicht umgewandelt !)
Ändere also einfach die Reihenfolge:
- eine neue lightbox erstellen und danach
- alle lightboxen in fancyboxen umwandeln
~Arano