zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden anstelle des a href jquery zum laden verwenden

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 15.03.2012, 13:36
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 11.03.2011
Beiträge: 290
irmen befindet sich auf einem aufstrebenden Ast
Standard anstelle des a href jquery zum laden verwenden

Hallo ich würde sehr gerne wissen,
wie man mit jquery eine neue Seite laden kann.

Ich habe an einer Stelle einen Link im Link. Kann den einen nicht verändern, möchte deshalb den anderen mit jquery ausführen.
Es soll on click eine neue Seite geladen werden.

von meinen zwei Befehlen:
Code:
<script language="javascript" type="text/javascript">
$(document).ready(function() {

		
$("#kunstgeschichtenlink").click(function() {
				// this function is fired when the mouse is moved on
				$("#kunstgeschichtenlink").css("display","none");
				$("html").load("http://www.kunstgeschichten.htm");	
			});			 
});
        
</script>
funktioniert der erste zum ausblenden(den hab ich nur zum testen rein, um zu sehen, ob sich überhaupt was tut)
Der zweite mit dem ich die neue Seite laden will - möglichst mit target _blank -geht nicht. Das ist wahrscheinlich einfach falsch geschrieben.
Ich suche schon die ganze Zeit, wie ich das machen kann.

Kann mir bitte jemnd weiterhelfen??

vielenDank!
Irmen

Geändert von irmen (15.03.2012 um 13:55 Uhr)
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 15.03.2012, 13:43
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.655
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Du kannst nicht einfach mit AJAX irgendwelche Inhalte nachladen, schon gar nicht von anderen Seiten. Warum benutzt du nicht einfach einen Link, dass ist bewährt und funktioniert.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 15.03.2012, 14:08
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 11.03.2011
Beiträge: 290
irmen befindet sich auf einem aufstrebenden Ast
Standard

hm - gibt es da keine Möglichkeit?

In der von mir benutzten Galerie, wird eine funktion ausgelöst, indem eine bestimmte Fläche als <a> gemacht ist.
Innerhalb dieser Fläche möchte ich aber nun noch zusätzlich einen link einfügen. die ganze Galerie umbauen, scheint mir recht aufwendig.
Kapier ich auch nicht, fürchte ich.

Deshalb nochmal meine Frage - gibt es gar keine Möglichkeit mit jquery anstelle eines bestimmten elements nun die ganze Seite anzusprechen?
Ich habe auf meiner
Suche gelesen, daß man in einzelne Element auf jeden Fall fremde Seiten reinladen kann. Ich weiß blos nicht wie ich die ganze htmlSeite anspreche - ich hoffe, ich drücke mich klar genug aus.

Vielen dank für einen Hinweis, wie es geht oder wo ich weiterlesen - suchen kann!
Irmen
Mit Zitat antworten
  #4 (permalink)  
Alt 15.03.2012, 14:48
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 09.10.2010
Beiträge: 148
MitjaStachowiak befindet sich auf einem aufstrebenden Ast
Standard

Also entweder du nimmst einen IFrame, wenn dieser von der gleichen Domain kommt, kannst du über das Name-Attribut Javascriptfunktionen aus der Seite, die im Frame angezeigt wird, aufrufen. Das habe ich zum Beispiel auf meiner Homepage gemacht: Meine Homepage
Prinzipiell funktioniert das so:
<IFRAME name="DerFrame" src="DieURLDerSeite"></IFRAME>
<SCRIPT type="text/javascript">
funktion MethodeAusAndererSeiteAufrufen () {
DerFrame.DieMethode();
}
</SCRIPT>

In Kombination mit Eval kannst du dir so leicht ein Interface basteln, das Frame und Parent-Seite miteinander kommunizieren lässt. Mit parent bzw. top (top ist das höchste parent) kann die Seite im Frame auf Funktionen der übergeordneten Seite zugreifen. Das funktioniert natürlich nur, wenn (wie gesagt) die Seite im Frame von der gleichen Domain kommt und wenn in dieser Seite die gewünschten Scriptfunktionen enthalten sind. Du kannst auch Scriptfunktionen in dieser Seite einbauen, die dann den HTML-Content verändern...

Die andere Möglichkeit ist ein HTTP-Request, das du mit Javascript machst (Stichwort new XMLHttpRequest();). So kannst du Inhalte nachladen. Das ganze unterliegt aber auch Sicherheitsvorschriften: Du kannst nicht auf fremde Domains zugreifen, der Aufruf des Scripts muss vom HTML-Header ausgehen, usw. Wenn du das in allen Browsern zum laufen kriegen willst, vor allem im alten IE, dann hast du 'ne Menge Arbeit vor dir

Geändert von MitjaStachowiak (15.03.2012 um 14:59 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 15.03.2012, 14:55
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 11.03.2011
Beiträge: 290
irmen befindet sich auf einem aufstrebenden Ast
Standard

Vielen dank für deine Hilfe!
bitte nicht verübeln - ich möchte nochmal nachfragen:
also ein ganz stinknormler seitenaufruf wie:

<a href="beispielseite.de" target="_blank">hier gehts zur BeispielSeite</a>

ist also nur mit iframe und ansonsten XMLHttpRequest(); zu realisieren???

Ich will nur eine Alternative zu einem "ahref -Link".

Kannst du mir das bitte nochmal bestätigen oder mich korrigieren?
(damit kein Mißverständnis entsteht)

Vielen Dank!
Irmen
Mit Zitat antworten
  #6 (permalink)  
Alt 15.03.2012, 14:59
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.655
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von irmen Beitrag anzeigen
Vielen dank für deine Hilfe!
bitte nicht verübeln - ich möchte nochmal nachfragen:
also ein ganz stinknormler seitenaufruf wie:

<a href="beispielseite.de" target="_blank">hier gehts zur BeispielSeite</a>

ist also nur mit iframe und ansonsten XMLHttpRequest(); zu realisieren???
Nein. Das ist mit window.open() realisierbar. Aber wie target hängt das von der Browserkonfiguration ab. Beides ist heutzutage eher deaktivert.

Zitat:
Zitat von irmen Beitrag anzeigen
Ich will nur eine Alternative zu einem "ahref -Link".
Ich verstehe immer noch nicht warum.
Mit Zitat antworten
  #7 (permalink)  
Alt 15.03.2012, 15:07
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 09.10.2010
Beiträge: 148
MitjaStachowiak befindet sich auf einem aufstrebenden Ast
Standard

Also wenn du nur das A-Element ersetzen möchtest, gibt es noch die Befehle window.location.href = 'URL' und location.replace.
Diese ersetzen einen Klick auf einen Link. Aber damit hast du keinen Zugriff auf die Seite, auf die du verlinkst. Diese wird dann statt deiner seite angezeigt.

Wie protonenbeschleuniger schon geschrieben hat, gibt es noch window.open(). Das wird aber gerne als Popup geblockt. Statt dessen würde ich mit createElement einen unsichtbaren Link in der Seite einfügen, diesem das Attribut target="_blank" geben und mit dem Befehl klick() aufrufen. Naja, das ist wohl nicht das, was du suchst.

Beschreibe doch bitte nochmal genauer, was du machen möchtest.
Mit Zitat antworten
  #8 (permalink)  
Alt 15.03.2012, 15:09
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 11.03.2011
Beiträge: 290
irmen befindet sich auf einem aufstrebenden Ast
Standard

vielen dank für eure antworten!!

wo finde ich denn, wie man das mit dem location.replace genau schreibt??
vielen dank ich glaube, sowas will ich.

Geändert von irmen (15.03.2012 um 15:15 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 15.03.2012, 15:17
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 11.03.2011
Beiträge: 290
irmen befindet sich auf einem aufstrebenden Ast
Standard

am Tollsten wäre es, das da hinein zu schreiben.


$("#kunstgeschichtenlink").click(function() {
// hier gehört doch der befehl rein
});
});

wie schreib ich das da rein?
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 15.03.2012, 15:34
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 09.10.2010
Beiträge: 148
MitjaStachowiak befindet sich auf einem aufstrebenden Ast
Standard

Also location.replace('NeueURL') funktioniert genau wie (window.)location.href = 'NeueURL'. Replace hat noch die besondere Eigenschaft, dass die aktuelle Seite nicht in der History landet, also wenn jemand auf der verlinkten Seite auf den Zurück-Button klickt, landet er nicht wieder auf der ursprünglichen Seite. Keine Ahnung, ob das für deine Zwecke hilfreich ist. Du musst auch kucken, ob replace in allen Browsern funktioniert.

Hier steht mehr dazu: JavaScript: 6.7.2 location.replace()
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: Datei in Container laden crossgolfer85 Javascript & Ajax 3 18.06.2009 14:38
Links in <div>-Container laden ohe Frames zu verwenden diablodroid CSS 70 25.11.2008 16:58
iframe Größe bei Laden des Inhalts an dessen Größe anpassen wiseguy Javascript & Ajax 0 24.06.2007 22:04
Inhalt des Contents laden? Cobain86 CSS 7 29.05.2007 12:17
div bereich am ende des dokument laden? wstbln CSS 7 28.12.2005 00:25


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