07.10.2017, 16:56
|
Новичок на форуме
|
|
Регистрация: 07.10.2017
Сообщений: 7
|
|
Рандомное значение
Всем здравствуйте, имеется код
var a = текст1;
var b = текст2;
var c = текст3;
setInterval(function(){
document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view").value = 'Тут что то пишем' \\ Тут нужно чтобы писалось рандомное значение
document.querySelector(".button.float-right.chat-interface__submit.qa-chat-buttons__submit.js-chat-buttons__submit.ember-view").click();
}, 2000);
Мне нужно чтобы из этих 3 значений рандомно выбралось одно и написалось бы, как это сделать? Помогите пожалуйста)
|
|
07.10.2017, 19:01
|
Профессор
|
|
Регистрация: 17.06.2016
Сообщений: 509
|
|
|
|
07.10.2017, 21:41
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var text = ['Text 1', 'Text 2', 'Text 3'];
var elemText = document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view");
var elemClick = document.querySelector(".button.float-right.chat-interface__submit.qa-chat-buttons__submit.js-chat-buttons__submit.ember-view");
setTimeout(function fn() {
elemText.value = text[getRandomInt(0, text.length - 1)];
elemClick.click();
setTimeout(fn, 2000);
}, 2000);
|
|
08.10.2017, 12:04
|
Новичок на форуме
|
|
Регистрация: 07.10.2017
Сообщений: 7
|
|
Сообщение от ruslan_mart
|
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var text = ['Text 1', 'Text 2', 'Text 3'];
var elemText = document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view");
var elemClick = document.querySelector(".button.float-right.chat-interface__submit.qa-chat-buttons__submit.js-chat-buttons__submit.ember-view");
setTimeout(function fn() {
elemText.value = text[getRandomInt(0, text.length - 1)];
elemClick.click();
setTimeout(fn, 2000);
}, 2000);
|
Спасибо, код работает, но на половину, он перебирает заданные мне слова, но вот клик не происходит, что не так в коде?
|
|
08.10.2017, 13:55
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
Попробуйте:
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var text = ['Text 1', 'Text 2', 'Text 3'];
var input = document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view");
setTimeout(function fn() {
input.value = text[getRandomInt(0, text.length - 1)];
input.form.submit();
setTimeout(fn, 2000);
}, 2000);
|
|
08.10.2017, 14:41
|
Новичок на форуме
|
|
Регистрация: 07.10.2017
Сообщений: 7
|
|
Сообщение от ruslan_mart
|
Попробуйте:
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var text = ['Text 1', 'Text 2', 'Text 3'];
var input = document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view");
setTimeout(function fn() {
input.value = text[getRandomInt(0, text.length - 1)];
input.form.submit();
setTimeout(fn, 2000);
}, 2000);
|
При таком методе выдает ошибку на sumbit ругается, поменял обратно на click, ошибок нет, опять же текст меняется, но не нажимает кнопку)
|
|
08.10.2017, 14:47
|
Новичок на форуме
|
|
Регистрация: 07.10.2017
Сообщений: 7
|
|
Скрипт поидее должен быть такой
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var text = ['Kappa', 'KappaPride', 'Keepo'];
var input = document.querySelector(".js-chat_input.chat_text_input.form__input.ember-text-area.ember-view");
var click = document.querySelector(".button.float-right.chat-interface__submit.qa-chat-buttons__submit.js-chat-buttons__submit.ember-view");
setTimeout(function fn() {
input.value = text[getRandomInt(0, text.length - 1)];
click.click();
setTimeout(fn, 2000);
}, 2000);
|
|
08.10.2017, 15:05
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
swerk, если чат на реакте или Vue собран, то ничего не выйдет, так как там Virtual DOM.
|
|
08.10.2017, 15:44
|
Новичок на форуме
|
|
Регистрация: 07.10.2017
Сообщений: 7
|
|
Сообщение от ruslan_mart
|
swerk, если чат на реакте или Vue собран, то ничего не выйдет, так как там Virtual DOM.
|
Ну например если в консоль ввести
document.querySelector(".button.float-right.chat-interface__submit.qa-chat-buttons__submit.js-chat-buttons__submit.ember-view").click();
То кнопка нажимается, а вот если в комбинации она не хочет работать)
|
|
08.10.2017, 17:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
swerk,
Сообщение от swerk
|
То кнопка нажимается,
|
так и напишите вместо click.click();
|
|
|
|