Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2018, 12:41   #1
Hobik
Новичок
Джуниор
 
Регистрация: 16.12.2018
Сообщений: 2
По умолчанию узнать индекс кнопки из массива

Добры день всем, люди добрые нужна помощь. Я учусь javascript и написал код, но в нем не хватает функция которы
1- будет при нажатье на кнопку проверять есть в нем тег img или нет и если есть alert('heloo')если нет то идем далее // кнопки -- диви с классом (page)
2- вычислить индекс нажатого кнопки из массива и запишет ее в переменную (x)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>


<div class="pagess">
<div class="pages">
<div class="page"><img src="#" alt="#">кнопка 1</div>
<div class="page"><span class="page-txt">кнопка 2</span></div>
<div class="page"><span class="page-txt">кнопка 3</span></div>
<div class="page"><span class="page-txt">кнопка 4</span></div>
<div class="page"><span class="page-txt">кнопка 5</span></div>
<div class="page"><span class="page-txt">кнопка 6</span></div>
<div class="page"><span class="page-txt">кнопка 7</span></div>
<div class="page"><span class="page-txt">кнопка 8</span></div>
<div class="page"><span class="page-txt">кнопка 9</span></div>
<div class="page"><span class="page-txt">кнопка 10</span></div>
</div>

<div class="pages">
<div class="page"><img src="#" alt="#">кнопка 1</div>
<div class="page"><span class="page-txt">кнопка 2</span></div>
<div class="page"><span class="page-txt">кнопка 3</span></div>
<div class="page"><span class="page-txt">кнопка 4</span></div>
<div class="page"><span class="page-txt">кнопка 5</span></div>
<div class="page"><span class="page-txt">кнопка 6</span></div>
<div class="page"><span class="page-txt">кнопка 7</span></div>
<div class="page"><span class="page-txt">кнопка 8</span></div>
<div class="page"><span class="page-txt">кнопка 9</span></div>
<div class="page"><span class="page-txt">кнопка 10</span></div>
</div>

<div class="pages">
<div class="page"><img src="#" alt="#">кнопка 1</div>
<div class="page"><span class="page-txt">кнопка 2</span></div>
<div class="page"><span class="page-txt">кнопка 3</span></div>
<div class="page"><span class="page-txt">кнопка 4</span></div>
<div class="page"><span class="page-txt">кнопка 5</span></div>
<div class="page"><span class="page-txt">кнопка 6</span></div>
<div class="page"><span class="page-txt">кнопка 7</span></div>
<div class="page"><span class="page-txt">кнопка 8</span></div>
<div class="page"><span class="page-txt">кнопка 9</span></div>
<div class="page"><span class="page-txt">кнопка 10</span></div>
</div>

<div class="pages">
<div class="page"><img src="#" alt="#">кнопка 1</div>
<div class="page"><span class="page-txt">кнопка 2</span></div>
<div class="page"><span class="page-txt">кнопка 3</span></div>
<div class="page"><span class="page-txt">кнопка 4</span></div>
<div class="page"><span class="page-txt">кнопка 5</span></div>
<div class="page"><span class="page-txt">кнопка 6</span></div>
<div class="page"><span class="page-txt">кнопка 7</span></div>
<div class="page"><span class="page-txt">кнопка 8</span></div>
<div class="page"><span class="page-txt">кнопка 9</span></div>
<div class="page"><span class="page-txt">кнопка 10</span></div>
</div>

<div class="action" >
<span id="action">text</span>
</div>


<script>

var action = [20, 18, 16, 14, 12, 10, 8, 6, 4, 2]; //наши переменый
var buttons = document.getElementsByClassName("pa ge"); // все класы кнопки в массиве
var x = 34; // индекс нажатаго кнопку ?
var y = x % 10; // остаток от деление
var z = action[y-1]; // получаем нужны резултат
document.getElementById('action').i nnerHTML = 'text ' + z + ' %' + ' text'; //выставляем значения

console.log(action);
console.log(buttons);
console.log(x);
console.log(y);
console.log(z);



</script>
</body>
</html>
Hobik вне форума Ответить с цитированием
Старый 16.12.2018, 17:47   #2
Hobik
Новичок
Джуниор
 
Регистрация: 16.12.2018
Сообщений: 2
По умолчанию

думается мне что массив не имеет индекс в javascripte и по этому ее не вычислить.
Hobik вне форума Ответить с цитированием
Старый 17.12.2018, 00:12   #3
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Код:
document.getElementsByClassName
Дает не массив, а коллекцию dom-узлов (дичь, но это так).
Для манипуляций как с массивом, эту коллекцию нужно преобразовать в массив:
Код:
const q = [...document.getElementsByClassName('tborder')]
для es6+
Код:
var t = Array.prototype.slice.apply(document.getElementsByClassName('tborder'))
для старых версий JS.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Узнать индекс Gregor Microsoft Office Excel 0 07.06.2012 09:17
Как узнать текущий индекс в foreach boris-blade Общие вопросы .NET 4 25.03.2010 19:26
Как узнать индекс Листа valerij Microsoft Office Excel 1 25.02.2010 19:04
Delphi Как узнать индекс компонента Alex1991 Помощь студентам 7 23.02.2010 21:48
Узнать индекс компонента в событие larin1974 Общие вопросы Delphi 5 13.12.2009 13:59