Использовать пользовательский скрипт как обычный javascript? - PullRequest
2 голосов
/ 21 июля 2011

Если у меня есть пользовательский скрипт, который я нашел в Интернете, и я хотел бы включить его в веб-сайт как обычный javascript (то есть не пользовательский скрипт), как я могу это сделать?

Это кажетсякак будто это было бы что-то довольно простое, но я новичок в javascript и usercript, надеюсь, кто-нибудь мне поможет.

Например, я нашел этот userScript: " Преобразование номеров отслеживания UPS и FedEx в ссылки"...

, который будет анализировать страницу для регулярных выражений, соответствующих любому номеру отслеживания UPS / FEDEX / USPS, и преобразовывать их в ссылки на веб-сайт отслеживания соответствующих операторов для отслеживания этого номера.

Это прекрасно работает как пользовательский скрипт, но я бы хотел, чтобы он был автоматическим на сайте, над которым я работаю (не требуется, чтобы посетители скачивали / устанавливали скрипт пользователя).
Как я могу использовать этот пользовательский скрипт какобычный JavaScript?

Ответы [ 3 ]

2 голосов
/ 21 июля 2011

Нужно просто связать его, как любой другой файл Javascript:

Сохраните его как foo.js, а затем в своем HTML,

<body>
<!-- body code here -->
<script src="foo.js"></script>
</body>
2 голосов
/ 21 июля 2011

Пользовательские скрипты обычно выполняются после загрузки DOM страницы, чтобы обеспечить полный доступ к содержимому страницы. Итак, вам нужен какой-то механизм для достижения этого. Но это немного сложно, поскольку более старые версии IE нуждаются в особой обработке.

Выполнение этого вручную потребует около 30 строк кода. Такие библиотеки, как jQuery, предлагают метод ready(), например:

<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).ready(function () {

    // put userScript here

});
</script>
1 голос
/ 21 июля 2011

Вы можете просто поместить его в файл JS и включить файл на свою страницу.

Пользовательские скрипты содержат обычный код Javascript, но выполняются плагином, а не находятся на странице.

...