|
|||
JQuery Funktion aufrufen wenn Bedingung erfüllt
Hallo zusammen und einen wunderschönen guten Morgen
bin ganz neu hier und hab natürlich auch ein Problem und hoffe etwas Hilfe oder einen Tip zu bekommen . Nun gut, ich setze also auf einer Seite JQuery ein. Dazu hab ich dann noch das Fancybox plugin. Das Plugin und Lightbox usw. funktioniert auch alles, so rufe ich nun einen Link auf: Code:
<script type="text/javascript"> $(document).ready(function() { $("a.fancy_test").fancybox({ 'overlayShow': true, 'overlayOpacity':0.7, 'hideOnContentClick': false, 'centerOnScroll': true, 'zoomOpacity':true, 'frameWidth': 640, 'frameHeight': 480 }); }); </script> Aber, und nun mein Problem. Ich habe auf der Seite ein Input Feld und einen Link mit der class="fancy_test". Klickt man nun auf den Link ruft dieser im onclick eine Funktion auf, etwa so: Code:
<a href="test.php?iframe" class="fancy_test" onclick="return pruefeInput();">Mein Link</a> Wenn nun die pruefInput() Funktion merkt dass das Feld nicht gefüllt ist wird ein False zurückgegeben und via Alert eine Fehlermeldung angezeigt. Bei einem normalen Link wird dieser ja gestoppt wenn onclick false zurück gibt. Aber das Jquery Plugin ist da hartnäckiger. Es geht trotzdem auf Wie kann ich da eine Bedingung einbauen dass die Fancybox auch nicht aufgeht? Wenn ich die ja über document.ready() aufrufe merkt die ja bereits beim laden dass der Link da ist. Nun hab ich den aufruf versucht in meiner pruefeInput() Funktion zu starten, d.h. wenn true zurückgeworfen wird, wird erst die fancybox geladen. ungefähr so: Code:
<script type="text/javascript"> function pruefeInput() { error = false; // ... feld abfragen und wenn nicht gesetzt wird error true if(error) { alert(errMsg); return false; } else { document.getElementById("link").href = newLink; $("a.fancy_test").fancybox({ 'overlayShow': true, 'overlayOpacity':0.7, 'hideOnContentClick': false, 'centerOnScroll': true, 'zoomOpacity':true, 'frameWidth': 640, 'frameHeight': 480 }); return true; } } </script> Hat jemand eine Idee wie ich meine Bedingung einbauen kann oder so ein Plugin stoppen kann?? Über einen Tip würde ich mich freuen . Vielen Dank im Voraus! MfG |
Sponsored Links |
|
|||
Hey,
der IE zeigt garkein Fehler an und im FF wird kein Javascript Fehler angezeigt. Im FF führt der die Funktion ja auch aus, er gibt true zurück und folgt dem Link. Aber das plugin dazwischen greift dann nicht mehr auf die Klasse im Link zu. Komisch. |
|
|||
Hi,
natürlich kenn ich die Fehlerkonsole Im FF in der Developer Toolbar hab ich eine Fehlerkonsole für CSS und JS. Wenn ich diese leere und dann die Seite lade und das Script ausführe würde bei einem Fehler dort alles reingeschrieben. Es erscheint lediglich ein CSS Fehler in der Fancybox.css, aber der steht da immer. Es erscheint kein Javascript Fehler. Und der IE meckert ja sowieso beim kleinsten JS Fehler unten links in der Statusbar Also es wird definitiv kein Fehler angezeigt. Wenn ich hab den Id Namen ändere, dann hab ich nen Fehler... document.getElementById("nix") has no properties. Die Fehlerkonsole scheint also zu funktionieren Gruß |
|
|||
Hi,
habs geschafft mein Problem selbst zu lösen. Leider nicht sehr schön, aber es funktioniert. Und zwar hab ich im Code der Fancybox selbst eine Variable gefunden die "busy" heißt, diese wird beim starten abgefragt, wenn true dann abbrechen, wenn false dann starten. Nun, jetzt hab ich meine Funktion zum prüfen des Inputfeldes. Beim aufruf der Funktion setze ich busy auf false, wenn die Prüfung ok war, dann bleibt die false, wenn nicht, dann wird busy true und die Funktion wird nicht ausgeführt. Im IE6,7 und FF3 unter Windows klappt es. Und im Safari und FF3 unter Mac OS X klappt es auch, ich denke das läuft Gruß |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
jquery: button der funktion ein und auschaltet? | sepp88 | Javascript & Ajax | 1 | 23.11.2009 17:19 |
JQUERY - Nach Formular senden weitere Funktion aufrufen | sturmi2 | Javascript & Ajax | 1 | 28.10.2009 16:32 |
jquery - funktion automatisch ausführen | M.R. | Javascript & Ajax | 1 | 03.10.2009 00:39 |
Mit setTimeout funktion im eigenen Objekt aufrufen | PoWl | Javascript & Ajax | 5 | 11.05.2008 10:35 |
[PHP] Funktion zum Optimieren von CSS | Floele | Serveradministration und serverseitige Scripte | 2 | 13.08.2005 10:31 |