Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Изменение url ссылки на странице и присвоение ей скрита (https://javascript.ru/forum/misc/69681-izmenenie-url-ssylki-na-stranice-i-prisvoenie-ejj-skrita.html)

Lenathyr 11.07.2017 23:32

Изменение url ссылки на странице и присвоение ей скрита
 
Есть простенький скрипт (работает на TamperMonkey) который вставляет логин и пароль на сайте:

(function() {
    'use strict';
var log = document.querySelector("#a1"),
      pass = document.querySelector("#a2");
     log.value = "123321";
     pass.value = "123321";
})();


Мне нужно чтобы он срабатывал не при открытии страницы, а при нажатии определённой ссылки (к слову которая находится на этой странице изначально, но имеет url). То есть надо есть изменить эту ссылку (допустим с идентификатором "#b1" и классом ".b2" ) так что бы она выполняла скрипт который написан выше. Заранее спасибо за помощь :)

j0hnik 11.07.2017 23:37

document.querySelector('#b1').onclick = function() {
    'use strict';
var log = document.querySelector("#a1"),
      pass = document.querySelector("#a2");
     log.value = "123321";
     pass.value = "123321";
};

Lenathyr 12.07.2017 10:53

Не работает, так же вставляет скрипт сразу же

j0hnik 12.07.2017 14:58

<html>
<head>
</head>
<body>
	<a href="#" id="b1">Кнопка</a>
	<input type="text" id="a1">
	<input type="password" id="a2">
	<script>
		document.querySelector('#b1').onclick = function() {
			'use strict';
			var log = document.querySelector("#a1"),
			pass = document.querySelector("#a2");
			log.value = "123321";
			pass.value = "123321";
		};
	</script>
</body>
</html>

у меня работает !

Lenathyr 12.07.2017 22:08

Всё работает, но только не так как я хотел. Нужно ещё что бы при нажатии кнопки, её изначальная функция не выполнялась, а выполнялся только скрипт написанный мной. И ещё, в консоли всё работает отлично, но на TamperMonkey (где мне и нужно) не хочет выполнять скрипт.

Manyasha 12.07.2017 22:45

Lenathyr,
Цитата:

Сообщение от Lenathyr
вставляет логин и пароль на сайте

А что за сайт сказать можете?
Попробуйте подписать в TamperMonkey
// @run-at document-start

или в
window.addEventListener("load")
запихать все

j0hnik 12.07.2017 22:53

Цитата:

Сообщение от Lenathyr (Сообщение 458348)
Всё работает, но только не так как я хотел. Нужно ещё что бы при нажатии кнопки, её изначальная функция не выполнялась.

перезапишите обработчик или удалите его

Lenathyr 12.07.2017 23:11

Вот к примеру на сайте стима https://steamcommunity.com/login
Что бы по нажатию одной из существующих кнопок (или можно новую создать) на этой странице выполнялся скрипт ввода текста в строки логина и пароля.
Если не сложно, не могли бы вы его написать (для TamperMonkey), ибо в js я не сильно разбираюсь :D

Manyasha 12.07.2017 23:44

Lenathyr,
пробуйте
// ==UserScript==
// @name         test
// @author       You
// @match        [url]https://steamcommunity.com/login[/url]
// @run-at document-start
// ==/UserScript==

window.addEventListener(
    "load",
    function(){
        var form = document.querySelector("#loginForm");
        form.addEventListener("submit", function(){
            form.querySelector("#steamAccountName").value = "ta-daaam";
            form.querySelector("#steamPassword").value = "pass";
        });
    }
);

Кнопка Войти.

Lenathyr 13.07.2017 13:46

Всё работает, большое спасибо! :)


Часовой пояс GMT +3, время: 21:44.