Страницы

Поиск по вопросам

четверг, 23 января 2020 г.

ВКонтакте доступ к jQuery из UserJS

#javascript #вконтакте #userjs


Если открыть консоль браузера на странице ВКонтакте, то введя  

$


увидим в выводе объект jQuery, но если внедрить на страницу UserScript:  

function append() {
    console.log( $ );
};

window.setInterval( append, 1000 );


то ровно раз в секунду в консоль будет падать ошибка undefined.
В каком пространстве имен искать jQuery и как вообще такое может быть, ведь UserScript
исполняется в глобальном контексте и в том же контексте происходит работа, если напрямую
вводить команды в консоль ?
    


Ответы

Ответ 1



Команды из консоли выполняются в контексте window + доступно API самого браузера. То, что вы видите, это ссылка на один из методов API браузера. Подробно с API системой вы можете познакомиться в документации соответствующего браузера. Сам сайт ВКонтакте не использует в своей работе библиотеку jQuery.

Ответ 2



Возможно, не подключена jQuery, подключите сами: // @require https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js

Комментариев нет:

Отправить комментарий