Per quanto ne so, nessun plug-in per la cronologia può rilevare quale pulsante del browser è stato premuto.
Il meglio che puoi fare è conservare una cronologia delle pagine visitate, quindi controllare se la nuova pagina è più indietro nella cronologia di quella attuale. Quando le pagine vengono riviste senza il pulsante Indietro/Avanti, probabilmente otterrai risultati errati con il codice sottostante.
codice di esempio testato:
var visitedPages = [$.address.path()];
var currentPage = $.address.path();
$.address.internalChange(function() {
visitedPages.push($.address.path());
});
$.address.externalChange(function() {
var newPage = $.address.path();
var currentPageIndex = -1;
var newPageIndex = -1;
for (var i = 0; i < visitedPages.length; i++) {
if (visitedPages[i] == currentPage) currentPageIndex = i;
if (visitedPages[i] == newPage) newPageIndex = i;
}
if (newPageIndex == -1 || currentPageIndex == -1) {
console.log("unkown button pressed");
} else {
if (newPageIndex > currentPageIndex) {
console.log('forward pressed');
} else
if (newPageIndex < currentPageIndex) {
console.log('back pressed');
} else {
console.log('page reloaded?');
}
}
});
Non riesco davvero a farlo funzionare. Sto cercando di creare un jsfiddle ma non ne sono capace. Grazie – Alvaro
Ti ho dato la taglia, ma non riesco ancora a farlo funzionare. Potresti postare un violino, per favore? – Alvaro
Forse potresti iniziare un violino e vedremo qual è il problema lì? – Tyron