2012-01-10 4 views
10

Diciamo che ho un sito web mobile che utilizza i percorsi radice URL per l'inclusione di beni, come le seguenti:percorsi PhoneGap e URL principale per le attività

<link rel="stylesheet" href="/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="/_assets/css/jquery.mobile.structure-1.0.min.css" /> 

In PhoneGap, non sembra che io possa creare un collegamento a i file in questo modo. Sul mio file index.html che dovrebbero essere percorsi relativi, come ad esempio:

<link rel="stylesheet" href="_assets/css/jquery.mobile.theme.css" /> 

Ma che dire di un file che si trova nel profondo del mio struttura di directory, come /sub/dir/index.html. Utilizzando i percorsi relativi avrei dovuto utilizzare il seguente:

<link rel="stylesheet" href="../../_assets/css/jquery.mobile.theme.css" /> 

E 'possibile fare riferimento a questo file in qualche modo assoluto? Ho provato il seguente senza successo:

<link rel="stylesheet" href="/www/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="file:///www/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="file://www/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="local:///www/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="local://www/_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="file:///_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="file://_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="local:///_assets/css/jquery.mobile.theme.css" /> 
<link rel="stylesheet" href="local://_assets/css/jquery.mobile.theme.css" /> 

e probabilmente anche un po 'di più solo per provare. Preferirei davvero non dover usare url relativi, quindi speriamo ci sia qualcosa di possibile.

risposta

2

suggerisco controllare PhoneGap on iOS with absolute path URLs for assets? la seconda risposta mostra il "vero" percorso assoluto, che è qualcosa di simile: file:///var/mobile/Applications/7D6D107B-D9DC-479B-9E22-4847F0CA0C40/YourApplication.app/www/... Non qualcosa che mi baso su.

0

penso che il href corretta è (per esempio, jquery.mobile.theme.css):

"file:///www/android_assets/css/jquery.mobile.theme.css" 
0

Ho lo stesso problema con le immagini su Android. Nel browser locale funziona bene, ma quando installo l'app sul mio dispositivo Android le immagini non verranno caricate.

Nell'esempio di jquery mobile sostituisco la directory _assets con le risorse, quindi cambia gli URL per puntare a questa cartella e funziona per me.

+1

Ho dimenticato: è necessario modificare il percorso in tutti i file html, css o js: 'for i in $ (grep" _assets "* -R | cut -d": "-f 1); fare sed "s/_assets/assets/gi" -i $ i; done' –