У меня есть набор ссылок на странице, которые при нажатии на кнопку запускают всплывающее окно в стиле лайтбокса (в частности, pdf файлы издателя на нескольких языках). Я пытаюсь выяснить, как заставить их автоматически открываться при загрузке страницы, но только тогда, когда в URL-адресе есть якорный тег.
example.com/page будет загружать страницу обычно
example.com/page#english заставит английскую версию всплывать при загрузке страницы
example.com/page#french сделает всплывающую французскую версию и так далее.
Я изменил код SarahBourt, чтобы отобразить модальный. Это помогло мне, подумал, что я поделюсь.
$( document ).ready(function() {
if (window.location.hash.length > 0) {
$(window.location.hash).modal('toggle');
//assumes you have an element with id='english', id='french', etc
}
});
Можно использовать jquery для проверки хеша на window.location и сделать что-то на основе этого:
$( document ).ready(function() {
if (window.location.hash.length > 0) {
$('#' + window.location.hash).click();
//assumes you have an element with id='english', id='french', etc
}
});
<a onclick="window.alert('CLICK!');" id="foo" href="#">link</a>
и событие onlcick вызовет предупреждение, как и ожидалось. Как только я избавляюсь от события onclick и просто хочу, чтобы ссылка действовала так, как будто ее обычно нажимают, щелчок не регистрируется. Эта ссылка:<a id="foo" href="example.com">link</a>
ничего не вызывает, в то время как другая ссылка делает.