Я использую plainModal
(http://anseki.github.io/jquery-plainmodal/) для отображения набора модалов на странице (http://codepen.io/Frondor/pen/xEBiA)
Все элементы инициализируют модалы без проблем, но мне нужно разделить URL-адрес, например mywebsite.com/#some-modal, чтобы страница загружалась вместе с этим модальным активным (# some-modal).
Вы можете увидеть мой кодфей выше и попытаться просветить меня некоторыми решениями. Я думаю, что мне нужно использовать какой-то скрипт маршрутизатора, но я не имею ни малейшего представления об этом. Мой сайт должен быть чисто статическим, html + js + css.
Хотя этот плагин "plainModal" имеет некоторые опции в отношении метода инициализации, я не понимаю и не могу понять, как это сделать с URL-адресами.
Заранее спасибо!
Вы можете проверить URL-адрес хеша, а затем открыть модальный метод на основе хэша:
// does url have a hashtag?
if(window.location.hash) {
var hash = window.location.hash.substring(1); //Puts hash in variable, and removes the # character
$('#sample-style').plainModal('open', {
duration: 500}, 'close', {close: $.fn.slideUp});
console.log(hash);
} else {
// No hash found
}
Прямо сейчас это открывает $('#sample-style')
- это тот же самый div, который вы открываете для каждого другого клика. Когда вы добавляете новый контент для каждого элемента, вы можете использовать код $('#'+hash).plainModal('open');//this opens <div id="{hash here}"></div>
$('#'+hash).plainModal('open');//this opens <div id="{hash here}"></div>
чтобы открыть div на основе хэша.