Есть ли способ заставить виджеты выводить функции jquery init() в один '$ (document) .ready()'?
Он должен выглядеть следующим образом:jQuery функция init().
$(document).ready(function($) {
$('.style1').plugin1Init();
$('.style2').plugin2Init();
$('.style3').plugin3Init();
});
Я спрашиваю, потому что я пытаюсь ускорить свою WordPress тему. У меня есть несколько виджетов, которые выводят код jquery в функциях $ (document) .ready().
Три '$ (документ) .ready() функции снижает скорость загрузки страницы почти в три раза согласно Jquery speed test
Пример кода на странице, когда я использую 3 виджеты:
$(document).ready(function($) {
$('.style1').plugin1Init();
});
$(document).ready(function($) {
$('.style2').plugin2Init();
});
$(document).ready(function($) {
$('.style3').plugin3Init();
});
Имея многократный * document ready * blocks не является проблемой вообще. Существует только одно событие, которое вызовет все зарегистрированные функции в цикле. Если ваша страница загружается медленно, это связано с чем-то другим. – ThiefMaster
_if_ вы ссылаетесь на тест, убедитесь, что [вы проверяете последний] (http://jsperf.com/docready/10) – Wrikken