window.addEventListener('pageshow', (event) => {
// Controlla se l'evento è stato attivato da una navigazione nella cronologia
if (event.persisted || (window.performance && window.performance.navigation.type === 2)) {
if (typeof _paq !== 'undefined') {
_paq.push(['trackPageView']);
_paq.push(['trackEvent', 'UX', 'Navigazione browser', 'Back/Forward']);
}
}
});
Mi genera una nuova vista di pagina ad ogni utilizzo dei tasti back e forward (quello che cercavo).
Purtroppo è impreciso sui browser Android (dove sembra duplicare l’evento) e in altre circostanze, ma sempre meglio di niente.
Mentre tutti i tentativi con “popstate” sono andati falliti!
L’implementazione di cui parlate è “Vanilla JavaScript” ovvero si presuppone che non stia girando altro javascript all’infuori che te.
Se invece il sistema in uso è un CMS o una App Mobile, in quel caso è probabile che invece sia in uso un Framework Frontend (React? Vue? JQuery???). In tal caso, occorre usare gli strumenti messi a disposizione dal framework.
Alcuni di essi implementano già il funzionamento di Matomo tramite moduli da aggiungere al framework, che si integrano con gli eventi interni. Ma in questo caso è meglio chiedere lumi agli sviluppatori delle integrazioni, o nelle community dei framework stessi.