Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.12.2017, 04:42
Новичок на форуме
Отправить личное сообщение для booboonya Посмотреть профиль Найти все сообщения от booboonya
 
Регистрация: 18.12.2017
Сообщений: 4

Как сделать перебор коллекции с кликом?
Скрипт по задумке должен удалять ВСЕ документы в VK ,но я не понимаю как кликнуть по следующему номеру в коллекции.
Или как вместо номера элемента поставить переменную?

var x = document.getElementsByClassName('docs_action_icon docs_delete_row').length;
if (x!=0) {
	document.getElementsByClassName('docs_action_icon docs_delete_row')[0].click();
	}
else {
	alert("end");
}


Что-бы он не только первый (нулевой) документ удалял,но и все последующие.
Я так догадываюсь что туда надо впихнуть:

for (var i=0; i<=[0].length; i++)


пробовал по-разному,но у меня он не работает никак.
Ответить с цитированием
  #2 (permalink)  
Старый 18.12.2017, 11:54
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

booboonya,
А что это за конструкция?
for (var i=0; i<=[0].length; i++)

Не догадываюсь
Метод getElementsByClassName

Последний раз редактировалось Dilettante_Pro, 18.12.2017 в 12:29.
Ответить с цитированием
  #3 (permalink)  
Старый 18.12.2017, 12:38
Новичок на форуме
Отправить личное сообщение для booboonya Посмотреть профиль Найти все сообщения от booboonya
 
Регистрация: 18.12.2017
Сообщений: 4

Сообщение от Dilettante_Pro Посмотреть сообщение
booboonya,
А что это за конструкция?
for (var i=0; i<=[0].length; i++)

Не догадываюсь
Метод getElementsByClassName

Я переписал скрипт ,но теперь он не удаляет самый первый элемент
var x = document.getElementsByClassName('docs_action_icon docs_delete_row').length;
if (x!=0) {
	for (var i=[0].length; i<x; i++) {
    document.getElementsByClassName('docs_action_icon docs_delete_row')[i].click();
	}
}
else {
    alert("end");
}
Ответить с цитированием
  #4 (permalink)  
Старый 18.12.2017, 12:47
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

booboonya,
Вы бы посмотрели ссылку из моего поста....
Ответить с цитированием
  #5 (permalink)  
Старый 18.12.2017, 13:18
Новичок на форуме
Отправить личное сообщение для booboonya Посмотреть профиль Найти все сообщения от booboonya
 
Регистрация: 18.12.2017
Сообщений: 4

Сообщение от Dilettante_Pro Посмотреть сообщение
booboonya,
Вы бы посмотрели ссылку из моего поста....
Я посмотрел ссылку сразу ,но все равно не понял где ошибка. Конструкция в моем первом примере ( [0].length ) - получение элемента по номеру. Я ее взял отсюда :
https://learn.javascript.ru/searchin...D1%82%D0%BE-id

И там написано : "Коллекцию нужно или перебрать в цикле или получить элемент по номеру и уже ему присваивать value, например так:
document.getElementsByTagName('input')[0].value = 5;"
В цикле так нельзя делать?
Ответить с цитированием
  #6 (permalink)  
Старый 18.12.2017, 13:25
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

booboonya,
В статье по ссылке ответ на ваш вопрос один к одному, не нужно никаких танцев с бубном.
var x = document.getElementsByClassName('docs_action_icon docs_delete_row');
	for (var i=0; i<x.length; i++) {
              x[i].click();
	}

    alert("end");
Ответить с цитированием
  #7 (permalink)  
Старый 18.12.2017, 13:28
Новичок на форуме
Отправить личное сообщение для booboonya Посмотреть профиль Найти все сообщения от booboonya
 
Регистрация: 18.12.2017
Сообщений: 4

Спасибо.
Ответить с цитированием
  #8 (permalink)  
Старый 18.12.2017, 13:36
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

booboonya,
Нужно хоть немного читать учебники, в частности, про массивы.
Например, [0] - это массив из одного элемента, значение которого равно 0. Соответственно, [0].length равно 1 - это длина этого массива.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать калькулятор и с чего начать? A.P. Yellowman Общие вопросы Javascript 3 15.11.2013 21:32
Как сделать реакцию на изменение любого элемента формы. Mik Events/DOM/Window 3 28.07.2011 08:52
Как убрать hover? Либо как сделать стрелки статичными? krusty36 Элементы интерфейса 1 13.07.2011 09:20
Как сделать, чтобы при наведении на кнопку справа от нее появлялись текстовые ссылки? Tass Общие вопросы Javascript 7 17.02.2011 09:06
Как сделать постоянную проверку на javascript alb Общие вопросы Javascript 18 09.01.2010 14:05