Tre azioni che meritano un posto nella barra: URL pulito, CSV, PIP
La barra delle azioni JustZix dà il meglio quando contiene le cose che usi ogni giorno. Ecco tre azioni universali — utili quasi ovunque, qualunque sia il sito. Ognuna è un pulsante e poche righe di codice.
Azione 1 — un URL pulito
Copi un link da inviare, e si trascina dietro una coda di ?utm_source=...&fbclid=.... Questa azione copia l'indirizzo senza la spazzatura di tracciamento. Etichetta URL, viola:
const url = new URL(location.href);
const junk = ['fbclid', 'gclid', 'msclkid', 'igshid', 'mc_eid'];
[...url.searchParams.keys()].forEach(k => {
if (k.startsWith('utm_') || junk.includes(k)) {
url.searchParams.delete(k);
}
});
navigator.clipboard.writeText(url.toString());
JUSTZIX.log('URL pulito negli appunti: ' + url);
Azione 2 — esportare una tabella in CSV
La pagina mostra dati in una tabella ma non ti dà alcun «scarica». Questa azione riversa la prima tabella in un file CSV. Etichetta CSV, verde:
const t = document.querySelector('table');
if (!t) { alert('Nessuna tabella nella pagina.'); }
else {
const csv = [...t.rows].map(r =>
[...r.cells].map(c =>
'"' + c.innerText.trim().replace(/"/g, '""') + '"'
).join(',')
).join('\n');
const a = document.createElement('a');
a.href = URL.createObjectURL(new Blob([csv], { type: 'text/csv' }));
a.download = 'tabella.csv';
a.click();
}
Azione 3 — Picture-in-Picture
Fa saltare il video della pagina in una finestra fluttuante che resta in primo piano quando cambi scheda. Etichetta PIP, blu:
const v = document.querySelector('video');
if (!v) { alert('Nessun video nella pagina.'); }
else if (document.pictureInPictureElement) {
document.exitPictureInPicture();
} else {
v.requestPictureInPicture();
}
Perché azioni, non regole
Tutte e tre condividono un tratto: vuoi attivarle in un momento che scegli tu, non automaticamente. È la definizione di un'azione — codice eseguito da un clic, non a ogni caricamento di pagina. Una regola che «copia l'URL a ogni visita» non avrebbe senso; un pulsante «copia ora» sì.
Trappole
- clipboard richiede un gesto.
navigator.clipboard.writeTextfunziona perché un'azione è un clic — il browser lo tratta come consenso dell'utente. Lo stesso codice in una regola (senza clic) verrebbe bloccato. - CSV prende la prima tabella. Una pagina con più tabelle? Restringi
querySelectora quella giusta. - PIP solo per <video>. I lettori che disegnano l'immagine su un
<canvas>non entreranno in Picture-in-Picture.
Vedi anche
- Esempi — queste e altre azioni pronte all'uso
- L'azione PULSANTE — il tipo di azione dietro queste tre
- window.JZ helpers — l'API programmatica delle azioni
Installa JustZix — e tieni questi tre pulsanti a portata di mano ovunque.
Valuta questo articolo
Nessuna valutazione — sii il primo.