ScriptJava это небольшая JavaScript библиотека, которая создана для облегчения разработки динамических веб-приложений.
Эта библиотека упрощает доступ к элементам на странице, добавлять, редактировать, удалять.
Отправка запросов GET, POST, HEAD с помощью AJAX
Работа с cookie
Добавление и удаление обработчиков событий
Отправка файла на сервер с помощью AJAX
И многое другое
Более подробно о всех возможностях этой библиотеке читайте на сайте разработчиков, адрес сайта указан вверху страницы.
Приведу пример одной интересной возможности этой библиотеки.
Это срабатывания кода после загрузки HTML.
Это усовершенствованный аналог window.onload, но window.onload дожидается полной загрузки страницы, вместе с картинками и прочими вставками, а тут лишь дожидается загрузки html.
Вещь полезна тем, что можно выполнить код, обращаясь например к элементам, которые находятся после этого кода.
А теперь выдержка из документации.
Функция $$r() является усовершенствованным аналогом window.onload и применяется для предотвращения выполнения javascript до полной загрузки документа.
В случаях когда мы пытаемся запустить javascript раньше чем загрузился документ вылетает ошибка.
Из за неправильного расположения скриптов в html коде так же могут возникать ошибки.
Scriptjava позволяет контролировать и запускать javascript только после полной загрузки документа.
Рассмотрим не правильный код:
<script type="text/javascript">
document.getElementById('test_onload').innerHTML='Проверка вставки текста';
</script>
<div id="test_onload"></div>
При выполнении кода выше javascript выдаст ошибку о том что элемент test_onload не найден.
Чтобы избежать преждевременного запуска скриптов, нужно использовать функцию $$r() в таком виде:
$$r(function() {
//тут пишем любой код который выполнится после полной загрузки документа
});
Не правильный код что мы рассмотрели выше можно переписать следующим образом:
<script type="text/javascript">
$$r(function() {
document.getElementById('test_onload').innerHTML='Проверка вставки текста';
});
</script>
<div id="test_onload"></div>
Теперь код не вызывает ошибок.
Вызывать функцию $$r() можно неограниченное число раз
Функцию $$r() нельзя вызывать после загрузки документа.
В отличие от window.onload функция $$r() дожидается только полной загрузки html кода,
что позволяет избегать непредвиденные ситуации, например связанные с загрузкой сторонних изображений в документ.