jQTouch con PhoneGap su webOS
Domanda
Sto scrivendo un'applicazione in PhoneGap che voglio correre su iOS, Android e webOS. jQTouch gioca piacevole con tutto su iOS e Android, ma non webOS.
Dato che il webOS Mojo quadro si basa su Prototype (che utilizza la variabile $
), è necessario utilizzare jQuery in modalità noConflict. Posso gestire più di tanto.
Tuttavia, il problema è che anche io voglio usare il plugin jQTouch. Gli usi di file jqtouch.js
$
tutto, causando errori JavaScript quando viene caricato il file.
C'è un modo per eseguire il plugin jQTouch (o qualsiasi plug-in per questo) nella mia applicazione PhoneGap senza interferire con Prototype?
Soluzione
Si dovrebbe essere in grado di avvolgere in una chiusura e passare jQuery in. Ad esempio:
(function($){
alert($);
}("Hello"))
(function($){
$("foo"); // uses the jQuery rather than $
}(jQuery))
Altri suggerimenti
actualy si può sbarazzarsi di prototipatore quindi non c'è alcun conflitto. leggere questo exerpt da una delle loro guide di programmazione:
Mojo è il quadro JavaScript standard che la maggior parte delle applicazioni webOS sono costruiti con. Tuttavia, se non si utilizza qualsiasi elemento all'interno allora è solo costare avvio tempo. È possibile impedire il caricamento di Mojo, semplicemente commentando il tag script nella parte superiore della pagina index.html.
-> Mojo fa una cosa di cui abbiamo bisogno comunque. Racconta il gestore di finestre quando l'applicazione è a pieno carico e pronto ad andare. Siamo in grado di farlo manualmente con un semplice gestore di eventi onLoad. Aggiungere il seguente script alla testa della pagina index.html:
la funzione onLoad () { if (window.PalmSystem) { window.PalmSystem.stageReady (); } }Quindi aggiungere una chiamata nell'evento onload del corpo.
Questo è tutto! Ora l'applicazione verrà caricato senza Mojo e start up molto più rapidamente.