|
|||
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> 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) |
Sponsored Links |
|
|||
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 |
|
|||
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) |
|
|||
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 |
|
|||
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. |
|
|||
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) |
|
|||
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? |
Sponsored Links |
|
|||
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() |
Sponsored Links |
Themen-Optionen | |
Ansicht | |
|
|
Ä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 | 69 | 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 |