Fancybox Probleme
Ich versuche zu implementieren ist eine fancybox. http://fancybox.net/howto
Ich wollen, rufen Sie diese Funktion auf ein element. Voll JS-Datei. http://fancybox.net/js/fancybox/jquery.fancybox-1.2.1.js
$.fn.fancybox = function(settings) {
Habe ich dies getan:
$(document).ready(function() {
$("a#inline").fn.fancybox();
});
Aber ich bekomme immer diese Fehlermeldung (über firebug):
$("a#inline").fn is undefined
[Break on this error] $("a#inline").fn.fancybox();
Was bedeutet das? Ich bin grundsätzlich mit der Instanziierung Probleme.
Bitte helfen.
BEARBEITEN
Die HTML-Datei:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Technologies</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="fancy/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="fancy/jquery.fancybox-1.2.1.js"></script>
<link rel="stylesheet" href="fancy/fancybox.css" type="text/css" media="screen" />
<script type="text/javascript">
$(document).ready(function() {
$("a#inline").fancybox();
});
</script>
</head>
<body>
<?php
include_once ("header.php");
?>
<div id="channel_calc">
How many Channels do I need?
<span id="yellow"><a id="inline" href="#ddm">Channel Calculator</a></span>
</div>
Es ist nicht, was ist falsch (es sei denn, Sie haben ungültige markup, die es gibt keinen Grund zu denken, dass Sie tun), aber es gibt keinen Punkt, was in den
T. J - ich bin kein Experte auf JS/HTML, aber die Jungs, erstellt dieses plugin verwendet, das in Ihrem Beispiel, so dass ich es kopiert.
a
Teil Ihrer a#inline
- Selektor. Die #
Betreiber in CSS-Selektoren zeigt eine ID und IDs sind völlig einzigartig. Keine Notwendigkeit zu qualifizieren, dass es das element mit der ID 'inline' das ist auch ein Anker.T. J - ich bin kein Experte auf JS/HTML, aber die Jungs, erstellt dieses plugin verwendet, das in Ihrem Beispiel, so dass ich es kopiert.
InformationsquelleAutor Abs | 2009-09-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
.fn bezieht sich auf den Prototyp.
Überprüfen firebug net-Registerkarte und sehen, was fehlt.
Stellen Sie sicher, dass Ihr script-Verweise so Aussehen: jsbin.com/uqezi
Ich habe Konsole und Skript tabs offen. Falls es das ist was du meinst?
Ihre web-Seite so minimalistisch wie möglich, versuchen Sie imitiert, was ich habe. Veröffentlichen Sie eine öffentliche url, wenn Sie könnten.
InformationsquelleAutor meder omuraliev
Di Sie, den Fehler zu finden? Hatte das gleiche problem. Lösung war, dass ich aufgenommen hatte, zweimal eine javascript-Datei, sondern ich enthalten die jquery.js Datei zweimal.
InformationsquelleAutor jNik
War ich auch mit diesem problem und fand, dass ich aufgenommen hatte, jquery.js zweimal. Entfernen Sie die zweite Referenz den Fehler behoben, ich war immer von der fancybox aufrufen
InformationsquelleAutor Ben Trevino
$("#inline").fn.fancybox (); $("#inline").fancybox();
Überprüfen Sie Ihren Pfad zu Ihrem fancybox-script und stellen Sie sicher, dass es enthalten ist, bevor Sie einen Aufruf der fancybox-Funktion.
Yep, das habe ich überprüft diese auch. Ich weiß nicht, was ich tun kann, um zu Debuggen oder zu lösen.
Ich bin mir ziemlich sicher, dass die Pfade falsch sind. Tun, ein Quelltext und kopieren Sie/fügen Sie die Pfade in Ihren browser ein. Stellen Sie außerdem sicher, dass jQuery enthalten ist, bevor das fancybox-script.
Ich habe auch, und das Skript erschien in Ordnung. Auch ich freue mich auf die Skripte über firebug. Dies ist immer seltsam!
InformationsquelleAutor
Müssen Sie sicherstellen, dass das laden fancybox NACH jquery, sonst erhalten Sie eine "fancybox ist nicht eine Funktion" Fehler und Ihre anderen javascript-brechen:
GEBROCHEN:
GUT:
InformationsquelleAutor Chris Adams
Habe ich kopiert ein fragment des HTML-und JS-innen jsfiddle.
Lösung
Finden Sie unter diesem link zum Beispiel arbeiten Sie Ihren eigenen code mit jquery version 1.4.4: http://jsfiddle.net/Ca6N5/
Sorry, ich erkannte das Datum, nachdem ich die Lösung gepostet. Btw, einige Lösungen kann man ein "upgrade" auf die früheren Antworten, da die meisten Lösungen waren hier schon ausgestorben in der Natur. Aber danke für den Hinweis über das Datum.
InformationsquelleAutor Dexter Huinda
Ich denke, Sie vergessen auch jquery selbst. Fancybox hängt davon ab, jquery.
InformationsquelleAutor richard
Als Ben sagte, stellen Sie sicher, dass jQuery nicht zweimal dabei durch einen Unfall.
InformationsquelleAutor Andy
$("#inline").fancybox(); -> das ist richtig
InformationsquelleAutor publikz.com