$('.modal').on('hidden.bs.modal', function (e) {
history.pushState('', document.title, window.location.pathname);
console.log($(this).attr('data-m'));
});
$(window).bind('hashchange', function() {
if(window.location.hash == ''){//Если после # ничего нет, значит закрываем модальное окно(попробуйте открыть модальное окно и в адресной строке удалить все после # после чего у вас закроется модальное окно)
$('.modal').modal('hide');
}
});
Взял с вашего
примера.
history.pushState - позволяет добавить новую запись в сессию истории текущего окна (вкладки). Добавление записи (элемента) осуществляется в конец сессии истории.
Т.е. вы просто добавляете страницу якобы предыдущую и там уже обрабатываете нужное вам действие.