2012-03-31 10 views
2

Ich versuche Waypoints zu verwenden, um einen sehr einfachen Scroll-Effekt zu machen, aber aus irgendeinem Grund kann ich einfach keine Wegpunkte überhaupt zum Arbeiten bekommen.Wegpunkte geben immer "undefined ist keine Funktion/Objekt" Fehler

jQuery (1.7.1) wird korrekt geladen und vor den Wegpunkten geladen. Es gibt andere jQuery-Funktionen auf der Seite, die alle ohne Probleme funktionieren. zum Beispiel:

$(document).ready(function() { 
    $(".form label").addClass("column"); 
} 

Waypoints (waypoints.min.js, Version 1.1.6) ist auch richtig, nach jQuery geladen.

Aber was auch immer ich tue, ich kann nicht scheinen, irgendetwas in Wegpunkte zu bekommen, um in allem außer Firefox zu reagieren.

Wenn ich waypoint() direkt auf ein Element aufrufen, ohne für die document Überprüfung Laden zu beenden, dann bekomme ich keine Fehler, aber keine Reaktion, entweder:

$('.wrapper').waypoint(function() { 
    alert('You have scrolled to an entry.'); 
}); 

- gibt keine Konsole Fehler oder Warnungen, aber alarmiert auch nichts (wie ich es nicht erwarten würde, da das Skript platziert wird, bevor das .wrapper Div erstellt wird).

Wenn ich warten, bis die document zu beenden, wie folgt aus:

$(document).ready(function() { 
    $('.wrapper').waypoint(function() { 
    alert('You have scrolled to an entry.'); 
    }); 
}); 

- dann scheint es in Firefox zu arbeiten, aber nicht in Chrome, Opera oder Safari. Safari Web-Konsole sagt mir

TypeError: 'undefined' is not a function (evaluating
'$('.wrapper').waypoint(function() { alert('You have scrolled to an entry.'); })')

- und ich bin nicht sicher, warum undefined ist jetzt plötzlich keine Funktion (oder warum die Funktion nun plötzlich undefined ‚Set‘ wird, je nachdem, was ist ein richtiger Betrachtungsweise bei it) ...

Ich bin unter keinen Umständen gut mit jQuery, oder JavaScript im Allgemeinen, so dass ich wirklich nicht weiß, wo ich suchen sollte, was auch immer damit im Konflikt steht, oder warum es mir das antut.

Hilfe?

Antwort

4

Ich habe, aus welchem ​​Grund auch immer, irgendwann einen zweiten Import von jQuery hinzugefügt, dieses Mal direkt von Googles Servern, und diesen zweiten Anruf in einer anderen Datei platziert, wo er seit Ewigkeiten ungesehen und unbekannt gelegen hat.

Sobald ich das los war, arbeiteten Wegpunkte (mehr oder weniger) wie erwartet.

+0

Viele Stunden sparen dank Ihnen. Es kann seltsame Verhaltensweisen innerhalb von JQuery geben, denke nur, dass du sie fallen lässt –

1

Ich bin neu in diesem Entwicklungspfad und die eine Sache, die mir aufgefallen ist, dass ich falsch mit den Jquery-Plug-Ins gearbeitet habe, war die Reihenfolge, in der ich meine Skripte im head-Tag hatte. Ich habe mein Jquery-Skript zuerst installiert, dann sind meine undefinierten Fehler in der Google Chrome-Konsole verschwunden.