Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Ottimizzare molti link con base uguale

    Sto provando a fare il mio primo programmino javascript ma non riesco a farlo funzionare e non lo posto perché mi vergogno
    Sto girando da due ore, ho cercato con la lente, ma non riesco a trovare.

    Nel sito che devo buttare fuori stasera ho qualche decina di link (pagine di documenti) che hanno come base la stessa parte di indirizzo e che non è corta. + tutto il resto dell'indirizzo che individua la pagina che pure non è corto.

    Esempio:
    1) http://nomesito2.sito.com/directory/pagina1...etc.html
    2) http://nomesito2.sito.com/directory/demo...etc.html
    3) http://nomesito2.sito.com/directory/dimo...etc.html
    4) http://nomesito2.sito.com/directory/ricerca1-1...etc.thml
    5) http://nomesito2.sito.com/directory/ricerca2-3...etc.html
    6) http://nomesito2.sito.com/directory/ricerca5-9...etc.html
    nvolte) http://nomesito2.sito.com/directory/occupatantospazio.html

    Pensavo quindi a uno script che ai link dove lo richiamo mi inserisse automaticamente il blocco che si ripete (grassetto) e che mi appesantisce la pagina per niente.

    quindi pensavo di impostare a variabile il valore http://nomesito2.sito.com/directory/
    codice:
    var host = "http://nomesito2.sito.com/directory/"
    e poi di inserire la variabile, molto corta, di volta in volta nei link che lo comprendevano risparmiando molto spazio in quanto sono link molto lunghi.

    tipo
    codice:
    Link1
    Link2
    Non so se è sufficiente solo impostare una semplice variabile (lo so fare) che poi è possibile leggere direttamente dentro l'href per ogni link (non lo so fare), o se si debba per forza (ma non credo) fare una procedura più complessa (che non so fare).


    Come si fa a comporre un link composto da una variabile fissa e da una parte di esso, senza fare cose macchinose?
    1 o 0, questo è il problema.

  2. #2
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    La tua idea è fattibile.

    Non si può fare direttamente piazzando una var JS nell' HTML ordinario, ma gli deve essere inviata da JS una volta che la pagina ha caricato (= una volta che l' Elemento A esiste).

    Oppure potremmo comporre col document.write ma ricadiamo in una codificazione che potrebbe ancora risultarti lunghetta, non lunghissima benché:

    codice:
    <script type="text/javascript">document.write('Link1');</script>
    codice:
    <html>
    <head>
    
    <script type="text/javascript">
    
    var host = "http://nomesito2.sito.com/path/directory/";
    </script>
    
    </head>
    <body bgcolor="#FFAAAA">
    
    <div align="center">
    
    <script type="text/javascript">document.write('Link1');</script>
    
    
    altro codice
    
    
    <script type="text/javascript">document.write('Link2');</script>
    
    </div>
    
    
    </body>
    </html>
    Se i Link sono però raggruppati, potremmo risparmiare la ripetizione dei Tag di apertura/chiusura:

    codice:
    
    <script type="text/javascript">
    document.write('Link3
    ');
    document.write('Link4
    ');
    document.write('Link5');
    </script>
    Attenzione che avendo usato i single quotation marks ' come delimitatori di stringa del document.write, si potranno usare liberamente i double " nel contenuto, mentre eventuali single richiederanno di essere preceduti dall' escape charcter \ per evitare interferenze con le delimitazioni.

    Mi spiace, sembra tu debba terminarlo stasera, ma devo assentarmi; confido in qualche altro "viandante" ...

  3. #3
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    sinceramente ti sconsiglio dall'affidarti ad una soluzione in javascript per una funzionalità così importante come i link: se javascript per qualche motivo non viene eseguito (o se si verifica un errore js in pagina) i tuoi link non funzioneranno e difficilmente saranno indicizzati dai motori di ricerca. Un suicidio.

    Potresti fare la stessa cosa in modo sicuro usando variabili definite con un qualche linguaggio lato server, ma se non puoi usarle evita del tutto di rimpiazzare i link lato client

    se tutti i link in pagina iniziano con lo stesso prefisso puoi usare il tag <base> nell'head della pagina

    codice:
    <base href="http://nomesito2.sito.com/directory/" >
    senza perdita di accessibilità
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  4. #4
    Grazie grazie grazie grazie per le risposte...

    Straystudios , (parlo sempre una lingua che ancora non conosco per cui chiedo scusa per gli strafalcioni... )
    però non mi serve comporre una lista di link, mi interessa che la macchina li veda completi, non credo serva che li scriva. Però l'elemento deve giustamente prima esistere... :master: Quindi sto dicendo una cosa sbagliata? mumble mumble

    fcaldera , non tutti i link... purtroppo. Giusta pure la tua osservazione sulla possibilità di crash.


    ... mumble mumble.
    Va bene, ho provato a vedere se era cosa fattibile e veloce, ormai devo uscire col sito e mi accontento di una pagina più pesante che alleggerirò mano a mano nei giorni successivi (così la vedrò anche al lavoro reale).
    Intanto grazie... davvero. Grazie.
    Ci ritornerò sopra perché mi sembra veramente uno spreco quella ripetizione di link.
    Non voglio andare ot, ma forse che ci sia la possibilità di gestirla via css?

    Che rabbia non sapere le cose, devo imparare di più.

    Ok vado. Grazie!
    1 o 0, questo è il problema.

  5. #5
    Originariamente inviato da Tiashi2 devo imparare di più.
    del tutto, non di più
    1 o 0, questo è il problema.

  6. #6

    Questa era l'idea nel mio programmino ipotetico

    Visto che ci sono intanto posto l'idea che avevo avuto.

    Nell'html pensavo di considerare la seconda parte dell'url, quindi quella che cambiava di volta in volta, come un id, e di indicarla come tale.
    Quindi applicando nell'href il javascript, di comporla con variabile + id. (nell'html).
    Sarebbe una soluzione abbastanza semplice, sapendo come realizzare lo script, anche perché forse la seconda parte del link la si può ridurre di suo ad un numero che compone la stringa e che precede una parte di stringa che se si omette non cambia nulla in quanto il link funziona uguale. E quindi l'id sarebbe un numero di 6-8 cifre.
    Alla fine ci sarebbe un risparmio notevole di spazio con variabile corta + id relativamente corto.

    Rimane il problema sollevato da fcladera, però potrebbe essere una funzione utile, forse.

    Ciao!
    1 o 0, questo è il problema.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.