На главной странице (stom-mva ru) одни пункты меню(ссылки) ведут на другие страницы, другие пункты - меняют на div'ы (основной "контент") с помощью этого кода:
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function() {
$('.m').on('click', function(e) {
e.preventDefault();
$('.content').each(function() {
$(this).css('display', 'none');
});
var block = $(this).attr('href');
$(block).css('display', 'block');
});
});
</script>
и
<li ><a href="#about" class="m" id="abo"> </a></li>
<li ><a href="uslugi.html" id="usl"></a></li>
<li ><a href="gallery.html" id="gall" ></a></li>
<li ><a href="#contacts" class="m" id="cont" ></a></li>
...
<div class="content" id="about">
...
Вопрос: как сделать так, что бы ЭТО меню корректно работало и с других страниц сайта? Т.е. чтоб и на других страницах ссылки, которые ведут на "дополнительные" div'ы на главной, срабатывали правильно, и показывали автоматом нужные блоки?
Как я думаю, что тут может быть 2 пути: 1. правильно указать в ссылках меню эти "динамические" блоки. (но как? знаю, только, что такое используется в CMS, но там же php!, и будут ли они тогда ЧПУ?) 2. в скрипт допилить функцию "срабатывания" и при переходе с "внешних" ссылок. Но как?
Пощелкал и выяснил, что у вас просто есть простое "несовпадение" при работе скрипта. Как это получается - вы когда перемещаетесь с "услуги" на "страхование", то ссылка имеет вид index.html#insurance. Ссылка то вполне рабочая, однако скрипт, который его обрабатывает срабатывает ПОСЛЕ прогрузки страницы.
И даже больше - скрипт обрабатывает НАЖАТИЕ (click) на элемент, а ведь при переходе на страницу вы на элемент не нажимаете уже - вы страницу загружаете. А вот при её загрузке обработки нет (ведь когда ты открываешь страхование вы переходите обратно на страницу index.html).
Решение достаточно простое - нужно поставить обработку на загрузку страницы, которая будет обрабатывать url. Если в урл есть айдишник ( #isurance), то должен срабатывать скрипт, который вы написали в вопросе. Пример события, который запускает твой код после загрузки DOM - $(document).ready(function()
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь создать новую категорию. Отправляю ее на сервер для сохранения в базе, и если success,то хочу добавить ее ко всем остальным в panel-group.
Здравствуйте, почему-то не работает отправка формы на почты, помогите разобраться в чем дело.