Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.09.2011, 18:34
Новичок на форуме
Отправить личное сообщение для DimaRogov Посмотреть профиль Найти все сообщения от DimaRogov
 
Регистрация: 13.09.2011
Сообщений: 6

как сделать событие для списка node.
есть много элементов

<div id = 'cont'>

<div class = 'exe'><button class = 'but'>Click</button></div>
<div class = 'exe'><button class = 'but'>Click</button></div>
<div class = 'exe'><button class = 'but'>Click</button></div>

</div>

[/JS]
var div = document.getElementById('cont');
elem = getElementsByClass('add',div);
but = getElementsByClass('but',div);

// getElementsByClass - описано раньше (взята отсюда //http://javascript.ru/unsorted/top-10-functions)
// у меня получился массив
//elem[0] - первый эл списка <div class = 'exe'>
//elem[1] и тп.
[JS]

как сделать одинаковое событие для всех кнопок на div класса exe
например
чтобы при нажатии на кнопку but[0] на элементе
elem[0] ,elem[0] - например менял фон?
Ответить с цитированием
  #2 (permalink)  
Старый 17.09.2011, 18:43
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Сначала прочитайте: http://javascript.ru/tutorial/events...rigger:-target

Здесь можно вообще без поиска элементов по CSS-классу обойтись примерно так:
function hasClass(el, cl) {
    return (" " + el.className + " ").indexOf(" " + cl + " ") > -1;
}

document.getElementById('cont').onclick = function (event) {
    event = event || window.event;
    var target = event.target || event.srcElement;
    if (hasClass(target, "but")) {
        …
    }
};
Ответить с цитированием
  #3 (permalink)  
Старый 17.09.2011, 22:15
Новичок на форуме
Отправить личное сообщение для DimaRogov Посмотреть профиль Найти все сообщения от DimaRogov
 
Регистрация: 13.09.2011
Сообщений: 6

ок, пока не понял код, тему обязательно прочту , спасибо=)
Ответить с цитированием
  #4 (permalink)  
Старый 18.09.2011, 16:00
Новичок на форуме
Отправить личное сообщение для DimaRogov Посмотреть профиль Найти все сообщения от DimaRogov
 
Регистрация: 13.09.2011
Сообщений: 6

Сообщение от Octane Посмотреть сообщение
Сначала прочитайте: http://javascript.ru/tutorial/events...rigger:-target

Здесь можно вообще без поиска элементов по CSS-классу обойтись примерно так:
function hasClass(el, cl) {
    return (" " + el.className + " ").indexOf(" " + cl + " ") > -1;
}

document.getElementById('cont').onclick = function (event) {
    event = event || window.event;
    var target = event.target || event.srcElement;
    if (hasClass(target, "but")) {
        …
    }
};
не очень понял , зачем нам сравнивать с -1 .

return (" " + el.className + " ").indexOf(" " + cl + " ") > -1
Ответить с цитированием
  #5 (permalink)  
Старый 18.09.2011, 16:10
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

проверка, есть ли указанная подстрока в строке
alert(  "fjsdfhkjh".indexOf("123")  ); // -1

alert(  "fjsdfh*!*123*/!*kjh".indexOf("123")  ); // 6
Ответить с цитированием
  #6 (permalink)  
Старый 18.09.2011, 16:52
Новичок на форуме
Отправить личное сообщение для DimaRogov Посмотреть профиль Найти все сообщения от DimaRogov
 
Регистрация: 13.09.2011
Сообщений: 6

ок, мы получили but,а возможно получить exe на котором but находиться?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать ссылки из файла CSS корректными для всех директрорий сайта? GrEb (X)HTML/CSS 4 18.01.2011 14:43
как сделать join для обьекта KOLANICH Общие вопросы Javascript 2 20.12.2010 21:00
Как сделать постоянную проверку на javascript alb Общие вопросы Javascript 18 09.01.2010 14:05
Нужно сделать плавное появление текстового поля как на сайте vkontakte.ru paratrooper1981 Элементы интерфейса 1 23.11.2009 18:24
Как сделать функцию типа toDataUrl для рисунка в ie6 ? Олег Общие вопросы Javascript 2 14.09.2008 00:06