Lexora offre due modalità per incorporare e personalizzare il player audio:
- Embed via markup (
<lexora data-speech="...">) applica automaticamente le impostazioni configurate all’interno di Lexora, inclusi colori, etichette e controlli abilitati. - Integrazione via JavaScript (
new Lexora(target, { ... })) ti consente di controllare in tempo reale stile, etichette, icone, comportamento del mini player flottante, opzioni di riproduzione e modalità automatica.
Metodi di integrazione
Inizia installando la libreria Lexora sul tuo sito web. Una volta completata l’installazione, puoi integrare il player audio utilizzando uno dei seguenti approcci:
1) Embed via markup
Questo è il metodo di integrazione più semplice. Il player si inizializza automaticamente e applica le impostazioni già configurate nel tuo progetto Lexora.
<lexora data-speech="[YOUR_SPEECH_ID]"></lexora> Usa questo metodo quando vuoi mantenere stile e comportamento coerenti su più pagine senza scrivere JavaScript personalizzato.
2) Inizializzazione via JavaScript
Usa JavaScript quando hai bisogno di un controllo più avanzato sul rendering, sugli aggiornamenti a runtime o su comportamenti specifici della pagina.
const target = document.querySelector('#lexora-target');
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]'
}); Lexora unisce la configurazione che passi via JavaScript con le impostazioni predefinite del player, quindi devi specificare solo le opzioni che vuoi sovrascrivere.
Opzioni JavaScript supportate
Opzioni principali
| Opzione | Tipo | Descrizione |
|---|---|---|
speech | stringa | Chiave speech (ID audio). |
stickyplayer | booleano | Abilita o disabilita il mini player fisso. |
playspeed | booleano | Abilita o disabilita i controlli della velocità di riproduzione. |
glass | booleano | Abilita o disabilita l’effetto glass. |
jumpSeconds | numero | Definisce i secondi di salto per i controlli di skip. Il valore predefinito è 10. |
seekStep | numero | Alias legacy di jumpSeconds. |
playbackJump | booleano | Flag legacy mantenuto per compatibilità con le versioni precedenti. |
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
stickyplayer: true,
playspeed: true,
glass: true,
jumpSeconds: 10
});Personalizzazione dello stile
L’oggetto style controlla il tema visivo del player. Questi valori vengono applicati internamente come variabili CSS.
Chiavi di stile supportate
| Chiave | Descrizione |
|---|---|
primary | Colore accent principale. |
background | Colore di sfondo base del player. |
foreground | Colore base di testo e icone del player. |
widget-background | Sovrascrittura esplicita dello sfondo del widget. |
widget-foreground | Sovrascrittura esplicita del colore di testo e icone del widget. |
widget-btn-background | Sfondo dei pulsanti principali di play e stop. |
widget-btn-foreground | Colore delle icone principali di play e stop. |
seek-background | Colore della traccia della barra di avanzamento. |
seek-fill | Colore della parte compilata della barra di avanzamento. |
seek-thumb | Colore del cursore della barra di avanzamento. |
visualizer | Colore del visualizzatore audio. |
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
style: {
primary: '#7CD259',
background: '#0C120D',
foreground: '#FFFFFF',
'widget-background': '#0C120D',
'widget-foreground': '#FFFFFF',
'widget-btn-background': '#7CD259',
'widget-btn-foreground': '#0C120D',
'seek-background': '#FFFFFF',
'seek-fill': '#7CD259',
'seek-thumb': '#FFFFFF',
visualizer: '#7CD259'
}
}); Se imposti solo primary, background e foreground, Lexora ricaverà automaticamente gli altri colori dell’interfaccia usando le regole di fallback predefinite.
Per garantire l’accessibilità, mantieni sempre un buon contrasto tra sfondo e primo piano.
Personalizzazione delle etichette
L’oggetto labels ti permette di sovrascrivere i testi del player. È utile per localizzazione, tono del prodotto o adattamenti specifici dell’interfaccia.
L’etichetta loading viene utilizzata negli stati di caricamento standard. L’etichetta generating viene utilizzata in modalità automatica mentre l’audio viene generato progressivamente. Le etichette jumpForward e jumpBack vengono usate automaticamente su iOS e Safari, dove i controlli della velocità di riproduzione vengono sostituiti da controlli di salto.
Chiavi etichetta supportate
| Chiave | Descrizione |
|---|---|
play | Etichetta dell’azione principale di riproduzione. |
stop | Interrompe completamente la riproduzione. |
resume | Riprende la riproduzione dopo una pausa. |
pause | Mette in pausa la riproduzione in corso. |
speed | Etichetta dei controlli della velocità di riproduzione. |
close | Chiude interfacce o modali collegati al player. |
init | Messaggio iniziale mostrato prima dell’avvio della riproduzione. |
loading | Messaggio di caricamento standard. |
generating | Messaggio mostrato durante la generazione in modalità automatica. |
jumpBack | Etichetta del controllo di salto indietro usato automaticamente su iOS e Safari. |
jumpForward | Etichetta del controllo di salto in avanti usato automaticamente su iOS e Safari. |
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
labels: {
play: 'Play',
stop: 'Stop',
resume: 'Resume',
pause: 'Pause',
speed: 'Playback speed',
close: 'Close',
init: 'Press play to listen',
loading: 'Loading speech...',
generating: 'Generating speech...',
jumpBack: 'Skip backward',
jumpForward: 'Skip forward'
}
});Personalizzazione delle icone
Puoi sostituire i controlli predefiniti passando stringhe SVG inline tramite l’oggetto icons.
Consigliato: usa fill="currentColor" o stroke="currentColor" in modo che le icone ereditino correttamente i colori del tema.
Chiavi icona supportate
| Chiave | Descrizione |
|---|---|
play | Icona principale di riproduzione. |
pause | Icona pausa. |
stop | Icona stop. |
close | Icona chiudi. |
minimize | Icona di minimizzazione del player sticky. |
wave | Icona dell’indicatore audio/voce. |
autoscroll | Icona dell’indicatore di scorrimento automatico. |
jumpBack | Icona salto indietro. |
jumpForward | Icona salto in avanti. |
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
icons: {
play: '<svg>...</svg>',
pause: '<svg>...</svg>',
stop: '<svg>...</svg>'
}
});Comportamento del mini player sticky
Quando stickyplayer è abilitato, Lexora mostra un mini player compatto quando il player principale esce dalla viewport.
- Compare solo mentre la riproduzione è attiva o in pausa.
- Si nasconde automaticamente quando la riproduzione termina o viene interrotta.
- Eredita la stessa configurazione visiva del player principale.
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
stickyplayer: true
});Velocità di riproduzione
Quando abilitato, il controllo della velocità scorre ciclicamente tra 1x, 1.5x e 2x.
Su iOS e Safari, i controlli della velocità di riproduzione non sono disponibili. In questi casi, Lexora sostituisce automaticamente il controllo della velocità con i comandi di salto indietro e salto in avanti.
new Lexora(target, {
speech: '[YOUR_SPEECH_ID]',
playspeed: true,
jumpSeconds: 15
});Opzioni della modalità automatica
La modalità automatica consente a Lexora di estrarre testo leggibile direttamente dalla pagina e generare l’audio su richiesta.
Opzioni supportate per la modalità automatica
| Opzione | Tipo | Descrizione |
|---|---|---|
mode | stringa | Imposta auto per abilitare la modalità automatica. |
contentTarget | stringa | Selettore CSS del contenitore dei contenuti da leggere. |
script | stringa | Testo esplicito da leggere, in alternativa all’estrazione automatica dalla pagina. |
language | stringa | Codice lingua usato per selezionare la voce in modalità automatica. |
voice | stringa | Nome della voce, ad esempio Aria. |
new Lexora(target, {
mode: 'auto',
contentTarget: '.article-body',
language: 'en-US',
voice: 'Aria',
stickyplayer: true,
style: {
primary: '#7CD259',
background: '#0C120D',
foreground: '#FFFFFF'
}
}); In modalità automatica, le opzioni passate via JavaScript hanno priorità sulle impostazioni predefinite del progetto.
Utilizzo consigliato
- Usa l’embed via markup quando vuoi una configurazione centralizzata gestita dalla dashboard Lexora.
- Usa l’integrazione via JavaScript quando hai bisogno di controllo dinamico, interfacce personalizzate o aggiornamenti a runtime.
- Usa etichette personalizzate per mantenere il player coerente con il tono del prodotto e la lingua dell’interfaccia.
- Usa solo i tre colori base quando vuoi che Lexora derivi automaticamente il resto dell’interfaccia.
- Usa la mappa completa di style quando hai bisogno di un controllo dettagliato su pulsanti, barra di avanzamento e visualizzatore.