Vai al contenuto
SilktideAiuto

Ancora mancante

Silktide verifica i link che puntano a una parte specifica della stessa pagina, ad esempio #content, e segnala quelli il cui obiettivo non esiste. Facendo clic su un link di questo tipo non succede nulla e l'utente rimane dov'era.

<!-- Non funzionante: nella pagina non c'è nulla con id="content" -->
<a href="#content">Vai al contenuto</a>

<!-- Corretto: l'obiettivo esiste -->
<a href="#content">Vai al contenuto</a>
...
<main id="content">...</main>

Perché è importante

I link alle ancore mancanti falliscono senza segnalazioni: non viene visualizzata alcuna pagina di errore, semplicemente la pagina non cambia. Per gli utenti vedenti questo è confuso; per gli utenti di e per chi usa la tastiera è peggio, perché questi link interni alla pagina sono spesso proprio i meccanismi — come "vai al contenuto" o un indice — che rendono navigabile una pagina lunga. Un'ancora non funzionante elimina silenziosamente questa scorciatoia.

Come risolvere il problema

  1. Aggiungi l'obiettivo mancante: assegna all'elemento desiderato un id che corrisponda al frammento del link, ad esempio <section id="pricing"> per un link a #pricing.
  2. Oppure correggi il link se l'obiettivo esiste con un id diverso: i frammenti distinguono tra maiuscole e minuscole, quindi #Pricing non corrisponde a id="pricing".
  3. Se il link esiste solo per attivare , continua a fare puntare il suo frammento all'id dell'elemento reale. In questo modo il link mantiene il suo significato anche senza JavaScript; potrebbe essere necessario impedire lo scorrimento predefinito nello script.
<!-- Il frammento corrisponde all'elemento mostrato dallo script -->
<a href="#details" onclick="toggle('details')">Mostra dettagli</a>
<div id="details">...</div>

Come Silktide esegue i controlli

  1. Trova ogni link nella pagina la cui destinazione include un frammento (la parte dopo #).
  2. Mantiene solo i link che puntano alla pagina corrente: link costituiti esclusivamente da #fragment oppure URL completi alla stessa pagina. I link alle ancore di altre pagine non vengono verificati da questo controllo.
  3. Cerca un elemento il cui id corrisponda al frammento oppure un'ancora legacy <a name="..."> con un nome corrispondente.
  4. Segnala il link se nessuno dei due esiste.

Per saperne di più

Ultimo aggiornamento

Questa pagina è stata utile?

Ancora mancante | Guida di Silktide