Newsgroup: it.comp.lang.javascript
Titolo: Collegamenti che non funzionano

Volevo trasformare, in uno script javascript, i riferimenti relativi al
documento in riferimenti relativi alla root. Tuttavia in quest'ultimo caso
il collegamento non funziona.
C'e' un motivo?
Grazie in anticipo.
Romeo
Questo funziona:
<a
href="javascript:transferview('assets/perterra_seregno_2002nov16_400x353.jpg
',400,353)">
            <img class="img-vig"
src="/sezioni/gallerie/seregno_2002nov16/assets/perterra_seregno_2002nov16_1
40x123.jpg" alt="Contro la guerra" width="140" height="123" border="0"></a>
Questo invece non funziona:
<a href="javascript:transferview('/sezioni/gallerie/
seregno_2002nov16/assets/perterra_seregno_2002nov16_400x353.jpg',400,353)">
            <ecc.></a>
Inoltre non funziona nemmeno il persorso assoluto:
<a
href="javascript:transferview('c:/documenti/_webattivi/brianzapopolare/sezio
ni/gallerie/seregno_2002nov16/assets/perterra_seregno_2002nov16_400x353.jpg'
,400,353)">
            <ecc.></a>
--
http://www.brianzapopolare.it/
http://digilander.libero.it/PRCseregno/
---------------

 C'e' un motivo?
I collegamenti che non funzionano sono sbagliati, questa e' l'unica, 
semplice spiegazione per il tuo problema.
Quando usi "/" o direttamente c:/ commetti due "errori", per la / il browser 
fara' sempre riferimento alla root del sito quindi se tu sei in una 
sottocartella la parte /sezioni... diventera' 
http://www.tuosito.boh/sezioni.
..
Mentre per "c:/", se sei sul server (la pagina gira in rete) non puoi certo 
sapere in quale cartella rispetto alla root dell'hard disk il sistemista ha 
sistemato le cartelle condivise web, mentre sul pc dell'utente non puoi 
sapere allo stesso modo dove l'utente ha, eventualmente, salvato la roba.
Poi col "c:/" non puoi neanche piu' usare http, ma semmai file:/// senza 
contare che magari uno non sta usando un sistema Windows e magari "c:/" non 
ha neanche senso nel suo sistema operativo.
Fatt il pistolotto :-) partiamo dall'inizio: cosa devi fare?
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
 ----> itALY = it <----

 Ciao, Riccardo
Semplicemente dato che alcune cartelle del sito sono in una posizione fissa
(ad esempio quelle relative agli stili, ed a certe immagini) volevo
assegnare un percorso relativo alla root.
La cosa non e' essenziale. Mi secca tuttavia il fatto di non riuscire a far
funzionare i collegamenti nel modo riportato sotto anche perche' potrei
averne necessita' in futuro.
Quello che non capisco e' perche' lo stesso percorso come src di una
thumbnail viene seguito perfettamente mentre come argomento di una funzione
javascript (che in pratica mostra la stessa immagine ingrandita) no. Devo
aggiungere che l'esame l'ho fatto solo in locale attraverso una preview di
Dreamweaver.
<a href="javascript:transferview('/sezioni/gallerie/
seregno_2002nov16/assets/perterra_seregno_2002nov16_400x353.jpg',400,353)">
            <img class="img-vig"
src="/sezioni/gallerie/seregno_2002nov16/assets/perterra_seregno_2002nov16_1
40x123.jpg" alt="Contro la guerra" width="140" height="123" border="0"></a>
Romeo


Non sono sicuro... ma la lunghezza dei nomi e dei file... mmmm mi sembra
eccessiva... ok che nel windows è cosi... ma sui server linux vale la stessa
regola?
Cooper.


 seregno_2002nov16/assets/perterra_seregno_2002nov16_400x353.jpg',400,353)">
Questo link passa alla funzione transferview l'immagine posizionata in:
http://www.tuosito.boh/sezioni/gallerie
 ...
Se l'immagine non viene visualizzata nella finestra, forse c'e' qualcosa 
nella funzione che "sposta" la roote del documento.
Personalmente io uso, per immagini, fogli, cartelle ecc, sempre e 
comunque percorsi assoluti a partire dalla root (come questa tua 
immagine)



Ho semi risolto il problema: il non funzionamento si verifica  solo in
locale, invece in rete tutto e' OK.
Non riesco comunque a capire perche' Dreamweaver non risolva gli indirizzi
relativi alla root che si trovino nei codici javascript e non sia cioe'
possibile la preview.
Il file di prova e'
http://www.brianzapopolare.it/sezioni/gallerie/seregno_2002nov16/prova.htm
Grazie comunque dell'attenzione
Romeo
La funzione e'  la seguente:
<script type="text/javascript" language="JavaScript">
var width,height
var image,ext
var cond1,cond2,scroll
function transferview(image,width,height) {
        if (width==0) cond1=" "
                else cond1="width="+(width+20)+"";
        if (height==0) {cond2=" ";
                        scroll="yes"}
                else {cond2="height="+(height+70)+"";
                      scroll="no"};
        var s1 ="<title>Immagine ingrandita</title>"
        var s15="<body>"
        var s2 ="<div align='center'><img src='"+image+"' border='0' />"
        var s3 ="<form><input type='button' value='Chiudi la finestra'"+
                " onClick='self.close()'>"
        var s4 ="</form></div></body>"
        ImageWindow=window.open("", "newwin"+width,
"toolbar=no,scrollbars="+scroll+",menubar=no,"+cond1+","+cond2);
        ImageWindow.document.write(s1+s15+s2+s3+s4)
        ImageWindow.document.close()
}
</script>


 possibile la preview.
Sorry, per DW non ti so proprio aiutare, cerca meglio nel manuale 
comunque; se una cosa si puo' fare codando a manina sicuramente ci 
sara' il modo di far funzionare tutto per bene anche con DW.



Ok, la soluzione è semplice, (un uovo di colombo).
Allora con dreamweaver... vai su: SITO / file del sito. a questo punto
inserisci tutti i dati relativi alla root del sito. secondo quello che ti va
chiedendo.
A questo punto... una volta che hai impostato tutto correttamente confermi
tutto... poi vai sul sito, clicca su mappa del sito e quindi sul sito che
hai impostato tu, lui ti visualizza un albero con i file relativi al tuo
sito, clicchi in una delle pagine... che vuoi aprire... e a quel punto il
gioco è fatto.
quando metterai l'url nei link e tutto, lo farà con riferimento alla root
del sito e non alla root del tuo sistema operativo. :-).
Cooper.


Non e' per permalosita' ma io ho sempre codificato tutto "a manina" come si
potra' intuire guardando i due siti che curo. Pero' Dreamweaver risolve
parecchi problemi di gestione dei siti specie quando sono piuutosto grandi:
brianzapopolare ha piu' di 1000 documenti in linea.
Romeo


 brianzapopolare ha piu' di 1000 documenti in linea.
'azzo... auguri! :-))
Ma non sarebbe il caso di passare ad un database e scripting server-side 
in questa situazione?


 Ok, la soluzione è semplice, (un uovo di colombo).
Come ho gia' detto non e' un problema di riconoscimento del percorso dei
normali link ma solo dei link attraverso javascript. Il sito infatti e'
installato come dovuto.
Comunque il problema l'ho risolto alla radice installando apache e facendo
passare le richieste di preview attraverso il server web locale.
Pero' e' strano che dreamweaver non riesca a risolvere i link contenuti
negli script.
Grazie comunque a te ed anche a Riccardo
Romeo


Ok, a me stranamente funge anche passando l'url attraverso javascript...
fai una prova e metti l'url senza la / iniziale e vedi cosa succede.
Cooper.