Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   переход по дивам с помощью одной кнопки (https://javascript.ru/forum/misc/41913-perekhod-po-divam-s-pomoshhyu-odnojj-knopki.html)

sonntagausgang 03.10.2013 22:42

переход по дивам с помощью одной кнопки
 
В общем у меня есть 20 контейнеров
<div class="content" id="content1" >
                      ***
<div class="content" id="content20" >


ну и всех блоков есть свойство
display:none
.

и есть ссылка

<a class="codrops-icon codrops-icon-drop" ><span>Back to the Codrops Article</span></a>


и
<a class="codrops-icon codrops-icon-prev" ><span>Previous Demo</span></a>


Нужно сделать чтобы при щелчке по первой ссылке дивы показывались в порядке возрастания id, а при второй ссылке уменьшались.

То есть получилось бы типа книжки. Ребят помогите пожалуйста.

рони 03.10.2013 23:15

sonntagausgang,
приложите хоть какие-то силы, на форуме этих вариантов полно http://javascript.ru/forum/showthrea...886#post229886

BETEPAH 03.10.2013 23:36

Цитата:

Сообщение от sonntagausgang
Нужно сделать чтобы при щелчке по первой ссылке дивы показывались в порядке возрастания id, а при второй ссылке уменьшались.

<style>.content {display: none}</style>
<div class="content">текст 1</div>
<div class="content">текст 2</div>
<div class="content">текст 3</div>
<div class="content">текст 4</div>
<div class="content">текст 5</div>
<div class="content">текст 6</div>
<div class="content">текст 7</div>
<div class="content">текст 8</div>
<a href="#" id="back">Back</a>
<a href="#" id="next">Next</a>
<script>
var contents = document.getElementsByClassName('content');
var nowContent = 0;
contents[nowContent].style.display = 'block';
document.getElementById('back').onclick = function(){changeContent(nowContent -1)};
document.getElementById('next').onclick = function() { changeContent(nowContent +1)};
function changeContent(news) {
	if (news < 0) news = contents.length - 1;
	else if (news > contents.length -1) news = 0;
	contents[nowContent].style.display = 'none';
	contents[news].style.display = 'block';
	nowContent = news;
}
</script>

только учтите, что для ИЕ8- надо getElementsByClassName создавать. Или подключать jQuery. Или делать поиск по ID, но учитывать, что при увеличении статей надо будет и скрипт исправлять. В общем возможны варианты.

danik.js 04.10.2013 05:07

Цитата:

Сообщение от BETEPAH
только учтите, что для ИЕ8- надо getElementsByClassName создавать

В таких случаях лучше всего использовать querySelectorAll, который поддерживается в IE8. Задумываться о IE6 - 7 - себя не уважать. Тогда уж и про IE5.5 думай, чё.

BETEPAH 04.10.2013 10:19

Цитата:

Сообщение от danik.js
Задумываться о IE6 - 7 - себя не уважать. Тогда уж и про IE5.5 думай, чё.

Бесспорно ;)


Часовой пояс GMT +3, время: 12:45.