mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 18.04.2024 17:57 Benutzername: Passwort: Auto-Login

Thema: Lightbox bei ajax eingebundenem Content vom 25.09.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Lightbox bei ajax eingebundenem Content
Seite: 1, 2  Weiter
Autor Nachricht
denise2302
Threadersteller

Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht: Weiblich
Verfasst Do 25.09.2008 08:36
Titel

Lightbox bei ajax eingebundenem Content

Antworten mit Zitat Zum Seitenanfang

Hallo!

Ich habe schon im php.de Forum gefragt, aber eine Lösung auch so richtig noch nicht bekommen...

Also, ich lade per Ajax Content in einen div. Bei diesem Content sollen sich dann Bilder mit der Lightbox öffnen. Die Lightbox-Funktion prüft aber am Anfang ob es rel=lightbox gibt. Da der Content da ja aber noch nicht da ist, findet er die Bilder natürlich nicht und es funktioniert nicht. Ich google nun schon seit gestern, es gab auch eine Lösung, die aber auch nicht funktioniert hat... Nun kann man es evtl. bewirken, dass wenn man auf den Link klickt, der den Content lädt, eine onclick funktion macht, die gleichzeitig die js.-Dateien der Lightbox nochmal mit lädt, oder halt kurz danach, damit die rel=lightbox gefunden werden? Oder hat vll noch irgendjmd eine andere Idee wie man das zum laufen bringen kann?

LG Denise
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 25.09.2008 10:31
Titel

Antworten mit Zitat Zum Seitenanfang

dein content wird an irgendeiner stelle sicher mit was ähnlichem wie innerHtml o.ä. ins div geschrieben. wenn das passiert ist, initierst du einfach die lightbox ein weiteres mal...

zweite möglichkeit... (hat viele feinde)... wäre eval()... (mach ich aber auch hin und wieder.. pssst *zwinker* )


Zuletzt bearbeitet von pixelpapst303 am Do 25.09.2008 10:33, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
denise2302
Threadersteller

Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht: Weiblich
Verfasst Do 25.09.2008 10:34
Titel

Antworten mit Zitat Zum Seitenanfang

so wird mein content eingefügt:

Code:

var ajax = null;
if (window.XMLHttpRequest)
      ajax = new XMLHttpRequest();
else if (window.ActiveXObject)
      ajax = new ActiveXObject("Microsoft.XMLHTTP");
 
function refresh_div(Div, Seite)
{
      ajax.open("GET", Seite, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  document.getElementById(Div).innerHTML = ajax.responseText;
      }
      ajax.send(null);
}


das hab ich von dieser seite: http://www.cybton.com/view_thread,Div+Inhalt+per+Klick+auf+Link+aendern,26775,2.html und fande es am einfachsten, es so zu machen... was kann ich da in die funktion schreiben, dass die anderen 2 js dateien nochmal mit initiert werden? kenn mich mit js nich so aus...
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 25.09.2008 10:57
Titel

Antworten mit Zitat Zum Seitenanfang

damit du nicht zu viel verändern musst, versuchs mal so:

Code:

var ajax = null;
if (window.XMLHttpRequest)
      ajax = new XMLHttpRequest();
else if (window.ActiveXObject)
      ajax = new ActiveXObject("Microsoft.XMLHTTP");
 
function refresh_div(Div, Seite)
{
      ajax.open("GET", Seite, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  document.getElementById(Div).innerHTML = ajax.responseText;
                  evalJs('deinjavascriptfile_1.js');
                  evalJs('deinjavascriptfile_2.js');
                  evalJs('deinjavascriptfile_uswusw....');
      }
      ajax.send(null);
}
function evalJs(JsFile)
{
      ajax.open("GET", JsFile, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  eval(ajax.responseText);
      }
      ajax.send(null);
}
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
denise2302
Threadersteller

Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht: Weiblich
Verfasst Do 25.09.2008 11:07
Titel

Antworten mit Zitat Zum Seitenanfang

Also ich habe jetzt meine js dateien eingefügt aber es geht nicht, nun werden meine Bilder nicht mehr angezeigt...

Code:

var ajax = null;
if (window.XMLHttpRequest)
      ajax = new XMLHttpRequest();
else if (window.ActiveXObject)
      ajax = new ActiveXObject("Microsoft.XMLHTTP");
 
function refresh_div(Div, Seite)
{
      ajax.open("GET", Seite, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  document.getElementById(Div).innerHTML = ajax.responseText;
                  evalJs('mootools-1.11.js');
                  evalJs('slimbox.js');
      }
      ajax.send(null);
}

function evalJs(JsFile)
{
      ajax.open("GET", JsFile, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  eval(ajax.responseText);
      }
      ajax.send(null);
}
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 25.09.2008 11:54
Titel

Antworten mit Zitat Zum Seitenanfang

ein tick zu früh für mich *zwinker*
erstmal zu deinen js. das sieht für mich nicht aus wie lightbox, aber egal. motools müsstest du eigentlich kein zweites mal laden (hoffe ich, weil man sonst was schlaueres bauen müsste). um ein einziges js nachzuladen sollte dies nun klappen:

Code:

var ajax = null;
var JSajax = null;
if (window.XMLHttpRequest) {
      ajax = new XMLHttpRequest();
      JSajax = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
      ajax = new ActiveXObject("Microsoft.XMLHTTP");
      JSajax = new ActiveXObject("Microsoft.XMLHTTP");
}
 
function refresh_div(Div, Seite)
{
      ajax.open("GET", Seite, true);
      ajax.onreadystatechange = function()
      {
            if(ajax.readyState == 4)
                  document.getElementById(Div).innerHTML = ajax.responseText;
                  evalJs('slimbox.js');
      }
      ajax.send(null);
}
function evalJs(JsFile)
{
      JSajax.open("GET", JsFile, true);
      JSajax.onreadystatechange = function()
      {
            if(JSajax.readyState == 4)
                  eval(JSajax.responseText);
      }
      JSajax.send(null);
}
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
denise2302
Threadersteller

Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht: Weiblich
Verfasst Do 25.09.2008 12:12
Titel

Antworten mit Zitat Zum Seitenanfang

mhmm es geht immernoch nicht *Schnief* die bilder öffnen sich immernoch nicht in der lightbox.. Ich verwende diese Lightbox: http://www.phpblogger.net/2007/11/29/slimbox-14-deutsch/
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 25.09.2008 12:27
Titel

Antworten mit Zitat Zum Seitenanfang

zeig mal n link von dem, was du gerade machst...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Lightbox Problem in Verbindung mit AJAX
Ajax: Content in nur ein Div laden
Animation & AJAX-Content laden?
[?] Links deaktiviert bei geladenen Content via jQuery/Ajax
[Ajax] Prototype Funktion Ajax.Updater - Brauche Hilfe
Content Editing, statt Content Management
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.