Я работаю над ботом (бот - это в значительной степени программа, которая делает что-то само собой) для веб-игры под названием 2048, но я не могу автоматизировать ключ Нажатие на расширение Chrome. он настроен, и он работает JQuery, но даже если я нашел других людей, спрашивающих об этом, он все равно не работает! кто-нибудь знает почему?Cant Automate Key Нажатие на JavaScript или JQuery для расширения Chrome
Это код для файла JS во фрагменте. Это только JS-файл, который я показываю вам, потому что это основной скрипт для расширения chrome (кроме manifest.js). так что не ожидайте, что это сработает! :
//2048 Bot By BukkitmanMC
//Before We begin, we Need to Modify the Document Page Before we can Start!
document.getElementsByClassName("restart-button")[0].innerHTML = "Start Bot"
var startedBot = false
function Bot() {
//Initialising Brain
var Game = {
KeyCode: { //These Are the WASD Keys cause with JQuery, I don't think you can use the arrow Keys
Up: 119,
Down: 115,
Left: 97,
Right: 100,
},
Map: [[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]
]
};
//This is Where the Thinking Starts
var e = $.Event('keypress');
e.keyCode = Game.KeyCode.Up; // Character 'W'
$("body").trigger(e);
console.log("Up Key Pressed")
setTimeout(Bot, 500)
};
document.getElementsByClassName('restart-button')[0].onclick = function() {
console.log("Bot Has Started Playing! Now you Just Need to Watch!")
Bot()
};
Если вы поняли это, и вы отправили это уже, спасибо!
Для ответа на ваш вопрос требуется информация, которая не включена в ваш вопрос. Нам нужно будет исследовать код для неуказанного веб-сайта, чтобы узнать, что необходимо для принятия события «keypress». Такой код должен быть в вопросе. Вам нужно будет провести расследование своего кода, чтобы узнать, какой элемент (ы) необходимо настроить для события. Вам также нужно будет проверить, проверяют ли они, было ли событие ['isTrusted'] (https://developer.mozilla.org/en-US/docs/Web/API/Event/isTrusted) – Makyen
Mayken, я делаю не понимаю, что вы имеете в виду. Можете ли вы объяснить это проще для меня? На самом деле я этого не понимаю. –
Чтобы решить вашу проблему, нам нужен код для веб-сайта, с которым он должен работать. Веб-сайт будет ожидать одно или несколько событий по конкретным элементам. Без этой информации мы ** не можем ** помочь вам за пределами горячего - в общем случае отправить событие. Кроме того, существует свойство событий 'isTrusted', которое специально предназначено для того, чтобы позволить прослушивателю событий различать события * фактически *, созданные пользователем, и события, генерируемые скриптами. Веб-страница может или не может проверить это свойство (код потребности). Я ничего не видел, поскольку расширения Chrome могут отправлять «доверенные» события. – Makyen