Загрузите JavaScript после полной визуализации страницы - PullRequest
4 голосов
/ 13 апреля 2011

Я добавил код JavaScript в тему Drupal 7, но он не запускается, как ожидалось, потому что css не применяется должным образом, когда моя функция запускается.
Итак, я попробовал минимальную реализацию, чтобы проверить, что происходит.

    jQuery(document).ready(function($) {

         alert("Start");  

    }

alert() запускается до полной загрузки страницы (т. Е. Отсутствуют все заголовки).Как я могу предотвратить это?

Ответы [ 2 ]

10 голосов
/ 13 апреля 2011

Чтобы выполнить скрипт после того, как все полностью загружено, вы хотите:

$(window).load(function(){
  alert('hello');
});

jQuery.ready () выполняется, как только DOM готов, что обычно происходит до загрузки внешних ресурсов.

3 голосов
/ 13 апреля 2011

Подробнее об API JavaScript Drupal 7 здесь .Вы хотите обратить внимание на раздел поведения.Поведения делают то же самое, что вы пытаетесь сделать в своем примере, однако, когда загружается страница Drupal, первое, что он делает, - создает экземпляр объекта Drupal.Этот объект расширяется каждым модулем с поведениями и атрибутами .Когда вы используете поведение Drupal вместо стандартного JQuery в готовом документе, в вашей функции JavaScript доступны все свойства и методы, определенные другими модулями.

Эти руководства ( 1 , 2 ) для Drupal 6, но они дают вам хорошее объяснение и представление о поведении Drupal.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...