Ich wurde nur gebeten, ein kleines Newsticker-Skript für eine unserer Websites zu schreiben, also schrieb ich ein bestehendes jQuery-Skript neu, um unsere Bedürfnisse zu erfüllen. Erst danach wurde mir gesagt, dass sie anstelle von jQuery Prototype verwenden, also muss ich jetzt das Skript konvertieren.jQuery zu Prototype, nicht sicher über einige jQuery-Teile
Die meisten einfachen Teile kann ich mithilfe der Prototype-Dokumentation herausfinden, aber es gibt einige Teile in der jQuery, mit denen ich nicht vertraut bin. Ich spreche in erster Linie über die Teile wie:
(function($) {
$.fn.newsTicker = $.fn.newsticker = function(delay)
{
delay = delay || 4000;
initTicker = function(el)
{
//bla bla some stuff
};
//here be more functions
this.each(
function()
{
if(this.nodeName.toLowerCase()!= "ul") return;
initTicker(this);
}
);
};
und
$.newsticker = $.newsTicker =
{
pause: function(el)
{
(el.jquery ? el[0] : el).pause = true;
},
//more functions
}
})(jQuery);
Sind diese irgendeine Art von Klassen? Ich verstehe nicht, wie $(#element).newsTicker()
die richtige Funktion auslöst. Wie funktioniert das und vor allem, was übersetzt es in Prototype?
Voll Skript: http://jsfiddle.net/PXn4r/9/
Awesome. Und was ist der Unterschied zwischen der Funktion mit .fn und der ohne? –
@Stephan Muller - Siehe die aktualisierte Antwort –