zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden jQuery - verschachtelte website

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 18.10.2009, 08:25
Benutzerbild von Illuminu
Irgendso'n Spinner
neuer user
Thread-Ersteller
 
Registriert seit: 12.10.2009
Ort: Franken
Beiträge: 14
Illuminu befindet sich auf einem aufstrebenden Ast
Unglücklich jQuery - verschachtelte website

Hoi.

Ich sah kein eigenes Forum für jQuery und ging einfach dreisterweise mal davon aus, dass es ins javascript-forum gehört.

Ich bin gerade dabei meine Website mit jQuery zu "basteln".
Ich komm soweit ganz gut klar, nur hab ich jetzt ein Problem.


Um das ganze Anhand eines Beispiels zu erklären:
In der linken Navigationsleiste (definiert als "LeftNav") befindet sich ein "Link" namens "Obst". Klicke ich darauf erscheinen in der rechten Navigationsleiste (definiert als "RightNav") weitere "Links" Namens "Apfel", "Birne", "Tomate". Im mittleren div (definiert als "main") steht nun "Obst sind Erzeugnisse der Natur, die meist an Bäumen wachsen."

Das Problem:
Wenn ich nun darauf klicke soll im mittleren div, das ich als "main" definiert habe eine Beschreibung über Äpfel, Birnen, Tomaten erscheinen. was aber nicht passiert.

Zweites, eher Nebensächliches Problem:
Ebenso wollte ich in die obere Navigationsleiste ("TopNav") einen Newsticker mit Javascript einbauen, welcher ebenfalls nicht funktioniert. wenn ich die html-datei, aus welcher sich jQuery die informationen über den inhalt der divs holt und in der dieser Newsticker dargestellt wird öffne, funktioniert dieser Newsticker aber. Jedoch nicht auf meiner hauptseite.


Ich hoffe das war nun alles verständlich ausgedrückt, falls nicht: bitte nachfragen. - zur not kann ich die seite auch hochladen.

lG,
Illu

PS: Ich denke der Grund dafür, dass sich das main-div nicht füllt ist, dass jQuery das main-div in der, im RightNav-geladenen, html-seite öffnen will. (blöder satz, wüsste nicht wie ich das sonst ausdrücken sollte, tut mir leid.)
Falls ich damit recht habe wäre ich für eine Lösung meines Problems überaus dankbar.
__________________
Don't Worry!
'bouta Thing!
'cuz ev'ry little thing
gunna be alright!
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 18.10.2009, 08:53
Benutzerbild von Scheppertreiber
Chaot und Nonkonformist.
XHTMLforum-Kenner
 
Registriert seit: 13.03.2007
Ort: Steinmark im Spessart
Beiträge: 7.457
Scheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein Lichtblick
Standard

Dann lade mal hoch. Ich wühle mich auch gerade in JQuery ein. Da Du ja mit
ziemlicher Sicherheit irgendeine Kleinigkeit übersehen hast, wird gerade diese
Kleinigkeit auch in Deiner Beschreibung fehlen
__________________
Grüße aus dem Spessart, Joe

{ table-layout: biertischistbesser; }
Der Mausinator
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 18.10.2009, 11:18
Benutzerbild von Illuminu
Irgendso'n Spinner
neuer user
Thread-Ersteller
 
Registriert seit: 12.10.2009
Ort: Franken
Beiträge: 14
Illuminu befindet sich auf einem aufstrebenden Ast
Standard

gut. ich hoffe du verzeihst mir, dass ich das erst heute nachmittag machen werde, hatte heute Nacht kaum schlaf. - Bis dahin: Glück auf!
__________________
Don't Worry!
'bouta Thing!
'cuz ev'ry little thing
gunna be alright!
Mit Zitat antworten
  #4 (permalink)  
Alt 18.10.2009, 12:36
Benutzerbild von Scheppertreiber
Chaot und Nonkonformist.
XHTMLforum-Kenner
 
Registriert seit: 13.03.2007
Ort: Steinmark im Spessart
Beiträge: 7.457
Scheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein Lichtblick
Standard

Und ich komme gerade vom Frühschoppen *prost*, Glück auf nach Schalke
__________________
Grüße aus dem Spessart, Joe

{ table-layout: biertischistbesser; }
Der Mausinator
Mit Zitat antworten
  #5 (permalink)  
Alt 18.10.2009, 16:52
Benutzerbild von Illuminu
Irgendso'n Spinner
neuer user
Thread-Ersteller
 
Registriert seit: 12.10.2009
Ort: Franken
Beiträge: 14
Illuminu befindet sich auf einem aufstrebenden Ast
Standard

hier, bitteschön:
Unbenanntes Dokument

wunder dich nich über das chaos, das is lediglich ne skizze von der website, design kommt später drüber, wenn das läuft.

Schalke? wieso Schalke? Ich bin Franke.
__________________
Don't Worry!
'bouta Thing!
'cuz ev'ry little thing
gunna be alright!
Mit Zitat antworten
  #6 (permalink)  
Alt 18.10.2009, 17:02
Benutzerbild von Scheppertreiber
Chaot und Nonkonformist.
XHTMLforum-Kenner
 
Registriert seit: 13.03.2007
Ort: Steinmark im Spessart
Beiträge: 7.457
Scheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein Lichtblick
Standard

Glück auf == Pott == Schalke. Schwarz/Gelb ist Passau

Ich komme jetzt gerade vom Fußball. Unsere Dorfmannschaft hat gewonnen und
ich einen im Tee. Ernstgemeintes kommt dann morgen !

Grüße aus Unterfranken.
__________________
Grüße aus dem Spessart, Joe

{ table-layout: biertischistbesser; }
Der Mausinator
Mit Zitat antworten
  #7 (permalink)  
Alt 18.10.2009, 18:04
Benutzerbild von Pr0g
(^.^)
XHTMLforum-Mitglied
 
Registriert seit: 22.08.2005
Ort: Düsseldorf
Beiträge: 535
Pr0g wird schon bald berühmt werden
Standard

Zitat:
Zitat von Illuminu Beitrag anzeigen
Ich sah kein eigenes Forum für jQuery und ging einfach dreisterweise mal davon aus, dass es ins javascript-forum gehört.
jQuery ist auch "nur" ein JavaScript also ja es passt gut hier rein.

Zitat:
Zitat von Scheppertreiber Beitrag anzeigen
Und ich komme gerade vom Frühschoppen *prost*, Glück auf nach Schalke
Zitat:
Zitat von Scheppertreiber Beitrag anzeigen
Ich komme jetzt gerade vom Fußball. Unsere Dorfmannschaft hat gewonnen und
ich einen im Tee. Ernstgemeintes kommt dann morgen !
Nicht, dass du noch nüchtern wirst

Zitat:
Zitat von Illuminu Beitrag anzeigen
hier, bitteschön:
Unbenanntes Dokument
Also ich sehe folgenden Code bei dir im Dokument:
Code:
$("#index").click(function(){$("#main").load("mainindex.html"); $("#TopNav").load("topnavindex.html"); $("#RightNav").load("rightnavindex.html");});

$("#shops").click(function(){$("#main").load("shops.html");});
$("#loggedin").click(function(){$("#main").load("loggedin.html");});
Die erste Zeile ist ok. Das Element #index existiert auf der Hauptseite und der onclick-Code kann diesem auch hinzugefügt werden.

Die anderen beiden Zeilen jedoch sind nicht ganz ok. Denn zu dem Zeitpunkt der Ausführung (nach dem Laden der Hauptseite) existiert noch kein Link mit der Id #shops oder #loggedin. Denn diese stehen in der "topnavindex.html", welche erst nachträglich geladen wird.

Du musst also dafür sorgen, dass die Zuweisungen erst gemacht werden, wenn die Links auch vorhanden sind. Also immer nach dem Laden der rechten Linkleiste.

Stelle das Script dazu wie folgt um:
Code:
$("#index").click(function(){
  $("#main").load("mainindex.html");
  $("#TopNav").load("topnavindex.html");
  $("#RightNav").load("rightnavindex.html");

  $("#shops").click(function(){$("#main").load("shops.html");});
  $("#loggedin").click(function(){$("#main").load("loggedin.html");});
});
Ich habe es nicht getestet, kannst ja mal probieren ob es so geht.
__________________
Mit Zitat antworten
  #8 (permalink)  
Alt 18.10.2009, 22:06
Benutzerbild von Illuminu
Irgendso'n Spinner
neuer user
Thread-Ersteller
 
Registriert seit: 12.10.2009
Ort: Franken
Beiträge: 14
Illuminu befindet sich auf einem aufstrebenden Ast
Standard

hmm nein, leider nicht. immernoch das selbe ergebnis, leider.

das schlimme daran ist auch, dass die seite am ende dreifach verschachtelt sein wird.

klick in Linke Navi: top-navi, rechte navi und main ändern sich. klick auf einen link in der top-navi: rechte navi und main ändern sich. klick auf einen link in der rechten navi: main ändert sich.

ausserdem überleg ich noch ob ich den chat in einem neuen fenster öffnen will oder in der main. (aus benutzerfreundlichkeit fast in neuem fenster... was dann aber kein problem darstellt.)

ebenso hab ich vor das seitendesign der uhrzeit anzupassen... mal sehen wie ich das hinkriege.
__________________
Don't Worry!
'bouta Thing!
'cuz ev'ry little thing
gunna be alright!
Mit Zitat antworten
  #9 (permalink)  
Alt 19.10.2009, 00:51
Benutzer
neuer user
 
Registriert seit: 26.01.2007
Beiträge: 87
trixta befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

das was Prog schreibt ist eigentlich richtig. Das Problem ist jedoch, daß die Inhalte ja nicht sofort nach dem Klick da sind, sondern erst nachdem die Response da ist. jQuery gibt dir dafür einen Complete-Callback. Der Code müßte damit so aussehen:

Code:
function bindRightnav(){
    $("#shops").click(function(){$("#main").load("shops.html");});
    $("#loggedin").click(function(){$("#main").load("loggedin.html");});
}
$("#index").click(function(){
   $("#main").load("mainindex.html");
   $("#TopNav").load("topnavindex.html");
   $("#RightNav").load("rightnavindex.html", bindRightnav);
});
Eine weitere Möglichkeit wäre hierbei die Live-Methode zu nutzen. Das würde dann so aussehen:

Code:
$("#shops").live("click", function(){$("#main").load("shops.html");});
$("#loggedin").live("click", function(){$("#main").load("loggedin.html");});

$("#index").live("click", function(){
   $("#main").load("mainindex.html");
   $("#TopNav").load("topnavindex.html");
   $("#RightNav").load("rightnavindex.html", bindRightnav);
});
Ansonsten würde ich mir aber nen etwas anderen Umgang mit Ajax und Javascript wünschen. Aber das Leben ist kein Wunschkonzert...
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 19.10.2009, 02:38
Benutzerbild von Illuminu
Irgendso'n Spinner
neuer user
Thread-Ersteller
 
Registriert seit: 12.10.2009
Ort: Franken
Beiträge: 14
Illuminu befindet sich auf einem aufstrebenden Ast
Standard

wenn ich das mit live-methode mache öffnet er mir nichtmal die rechte navi.

ich hoffe ich habe damit nichts falsches angestellt:
Code:
<script>
$(document).ready(function(){
$("#shops").live("click", function(){$("#main").load("shops.html");});
$("#loggedin").live("click", function(){$("#main").load("loggedin.html");});

$("#index").live("click", function(){
   $("#main").load("mainindex.html");
   $("#TopNav").load("topnavindex.html");
   $("#RightNav").load("rightnavindex.html", bindRightnav);
});
__________________
Don't Worry!
'bouta Thing!
'cuz ev'ry little thing
gunna be alright!
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
jQuery - verschachtelte while()-Schleife wird nicht ausgeführt Taiphoon Javascript & Ajax 3 17.09.2009 11:49
JQuery + Wordpress VoinG Javascript & Ajax 0 29.12.2008 16:03
analysetool für websites opa-rudi Site- und Layoutcheck 23 05.08.2008 14:33
Bitte um Feedback zu meiner überarbeiteten Website Sen-nefer Site- und Layoutcheck 9 08.02.2008 15:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:19 Uhr.