History.js для правильной работы с модальным всплывающим окном

#javascript #jquery #history.js

#javascript #jquery #history.js

Вопрос:

Интересно, есть ли у кого-нибудь лучшее решение моей проблемы. Я пытаюсь реализовать History.js to также работает с модальным всплывающим окном. Тот же метод, который используется в Pinterest, если вы попытаетесь щелкнуть любой из пинов, которые отображаются во всплывающем окне, и если вы закроете всплывающее окно или нажмете стрелку назад в браузере, URL-адрес изменится обратно на root. Попробуйте переслать историю браузера назад, и это то, что мне нужно. вот мой код на данный момент.

 $('.thumbnail').on('click',function(e){
    var urlPath = $(this).attr('href');

    //ajax call here then update content of the popup and pushState after ajax successful
    History.pushState({ "action":"show_popup" } , response.pageTitle, urlPath); //change url to website.com/post/123456
    $('#popup').popup('show'); //show popup
});

History.Adapter.bind(window,'statechange',function() { 
        var State = History.getState();
        if(State.action == "show_popup"){
            //call to show popup
        }else{
            //call to hide all popup
        }
});

//change back the url when popup close
$('#popup').bind('closed',function(){
    // change the url back to website.com/feeds/
    History.back();
});
  

Моя проблема в том, как мне определить, когда показывать или скрывать всплывающее окно при пересылке / возврате браузера?