Frage

Ich bin eine Anwendung in PhoneGap Schreiben, dass ich auf iOS, Android ausgeführt werden soll, und webOS. jQTouch spielt schön mit allem, was auf iOS und Android, aber nicht webOS.

Da die webOS Mojo Framework basiert auf Prototype (die die $ Variable) verwendet, ist es notwendig, jQuery in noConflict Modus zu verwenden. Ich kann diese viel handhaben.

Doch das Problem ist, dass ich mag auch das jQTouch Plugin verwenden. Die jqtouch.js Datei verwendet $ überall, so dass JavaScript-Fehler, wenn die Datei geladen wird.

Gibt es eine Möglichkeit, die jQTouch Plugin (oder ein Plugin für diese Angelegenheit) in meiner PhoneGap Anwendung auszuführen, ohne mit Prototype zu stören?

War es hilfreich?

Lösung

Sie sollten sie in der Lage sein, in einem Verschluss wickeln und übergeben jQuery in. Zum Beispiel:

(function($){
   alert($);
}("Hello"))

(function($){
   $("foo"); // uses the jQuery rather than $
}(jQuery))

Andere Tipps

actualy können Sie von Prototypist loszuwerden, so gibt es keinen Konflikt gibt. Lesen Sie diesen Auszug aus einem ihres Programmführer:

ist Mojo die Standard-JavaScript-Framework, dass die meisten webOS Apps mit gebaut. Wenn Sie jedoch sind keine Funktionen innerhalb sie verwenden, dann ist es kostet nur Sie die Startzeit. Sie können Mojo von Laden verhindern, indem einfach das Script-Tag an der Spitze Ihrer Seite index.html Kommentierung aus.

-> Mojo ist eine Sache, dass wir jedoch brauchen. Es erzählt den Window-Manager, wenn die App voll beladen und bereit ist zu gehen. Wir können dies mit einem einfachen onLoad-Ereignishandler manuell tun. Fügen Sie das folgende Skript an der Spitze der Seite index.html:

  Funktion onLoad () {     if (window.PalmSystem) {         window.PalmSystem.stageReady ();     } }

Dann fügen Sie einen Anruf in dem Onload-Ereignisse des Körpers.

Das ist es! Nun ist die App ohne Mojo laden und schnell viel mehr starten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top