Многие согласятся с тем, что использование тегов привязки для выполнения Javascript (и больше ничего не делать) немного беспорядочно, поскольку, помимо прочего, он генерирует хеш-тег в адресной строке, который может сбить с толку пользователей.Это не значит, что они не имеют своего места в JS-исполнении.
Однако достичь этого очень возможно.Вот одно из возможных решений:
<a href="#" onclick="show('div1')">Link1</a>
<a href="#" onclick="show('div2')">Link2</a>
<div id="div1">Text1</div>
<div id="div2" style="display:none;">Text2</div>
<script>
var currentDiv = document.getElementById("div1");
function show(divID) {
var div = document.getElementById(divID);
currentDiv.style.display = "none";
div.style.display = "block";
currentDiv = div;
}
</script>
Тег script
определяет переменную и функцию: currentDiv
, которая ссылается на отображаемый в данный момент элемент div и функцию show
, которая используется для скрытияотображаемый в данный момент div и показывающий новый.
Теги привязки вверху, по щелчку, вызывают функцию show
, заменяя отображаемый в данный момент элемент тем, который указывает тег привязки.
Чтобы элементы отображались / скрывались, код изменяет атрибут CSS display
элемента.Значение block
показывает элемент div, а значение none
скрывает его.Свойство display
второго div имеет значение none
при загрузке страницы.Javascript изменит этот атрибут при нажатии на ссылку.
Нет, вам не нужен JQuery, но это может помочь.