Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Взять элемент по ссылке (https://javascript.ru/forum/dom-window/53363-vzyat-ehlement-po-ssylke.html)

timedo 31.01.2015 00:00

Взять элемент по ссылке
 
Здрасте, я в js не силен. Интересует возможно ли по ссылке взять элемент. К примеру:
$('a[href="ссылка"]').document.getElementById('поле ввода').value= "asd";

danik.js 31.01.2015 02:19

Нет, элемент взять нельзя конечно же. Только всю страницу целиком, а затем уже распарсить ее и получить нужный элемент.
И страницу можно загрузить только со своего сервера. С чужого никак.

timedo 01.02.2015 23:21

Спасибо за ответ. Может я не понял ответа, а как тогда работают плагины которые запоминают действия(пример iMacos)? Вот к примеру я могу с помощью этого плагина автоматизировать действие на фейсбук, постинг в группу. Он как то наверно обращается к тем элементам с которым я работал, вставляет текст и нажимает на кнопку отправить.
Получается создавая плагин(к примеру), я не смогу обращаться к элементам чужого сайта? Задать ссылку, куда нужно обратиться и элемент на который нужно нажать или вставить текст.
К примеру "facebook.com/mygroup", id текстового поля "text_id", id кнопки "id_button", получается:
$('a[href="facebook.com/mygroup"]').document.getElementById('text_id').value= "my text";
document.getElementById('id_button').onclick


Почему так нельзя?

danik.js 02.02.2015 01:15

Во-первых, чтобы что-то запостить, в большинстве случаев не нужны никакие элементы. Сервер и браузер общаются посредством HTTP-запросов. Так что достаточно запомнить параметры POST-запроса при постинге в группу и в дальнейшем можно его повторять с другими параметрами (текст поста в данном случае). Спам-боты успешно справляются с подобной задачей :)
Во-вторых, у браузерных расширений своя кухня. Я-то говорил про ограничение для веб-страниц. А за расширения ответственность лежит на самом пользователе, который их себе установил, поэтому расширениям позволено больше действий. По расширениям не спец, так что тут не помогу.


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