Javascript-форум (https://javascript.ru/forum/)
-   Prototype & script.aculo.us (https://javascript.ru/forum/prototype-script-aculo-us/)
-   -   Поиск элемента и переключение классов (https://javascript.ru/forum/prototype-script-aculo-us/16955-poisk-ehlementa-i-pereklyuchenie-klassov.html)

igsavenko 30.04.2011 07:10

Поиск элемента и переключение классов
 
Добрый день. встретился с Prototype впервые, ранее работал только с Jquery. Объясните, что нужно использовать чтобы получить следующее:

По нажатию на h1 нужно найти следующий элемент (<div>) и переключить класс с одного на другой (видимый на не видимый и наоборот)
Этих элементов может быть несколько
<div class = "action">
<h5>Тут Заголовок</h5>
<div class="test">
у этого элемента нужно переключать класс
</div>
</div>
<div class = "action">
<h5>Тут Заголовок</h5>
<div class="test">
у этого элемента нужно переключать класс
</div>
</div>
<div class = "action">
<h5>Тут Заголовок</h5>
<div class="test">
у этого элемента нужно переключать класс
</div>
</div>


Заранее спасибо.

melky 30.04.2011 07:57

для этого есть функция toggleClassName()

<style>
.a { border : 3px red solid }
</style>


<b id="1">test</b>

<script src="http://yandex.st/prototype/1.7.0.0/prototype.min.js"></script>
<script>
$('1').toggleClassName('a');
</script>

igsavenko 30.04.2011 08:44

Спасибо. а можно спросить про клик? как в prototype привязать событие к элементу? И видите в чем проблема у меня нет id у элементов :( Нашел такую функцию $$(), которая позволяет найти элемент по class и возвратить массив, все таки первая част вопроса меня больше интересует (как привязать click).

melky 30.04.2011 13:57

смотрите на документации тут

вот пример

<b id="1">нажми сюда</b>

<script src="http://yandex.st/prototype/1.7.0.0/prototype.min.js"></script>
<script>
$('1').observe('click', function(){alert('кликнули')});
</script>


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