morgenshtern 5 Опубликовано: 20 декабря 2016 Рассказать Опубликовано: 20 декабря 2016 Ошибка возникает (через раз) только при включенной опции Включить Gzip сжатие JS файлов Подозреваю что это из-за того, что страница грузится быстрее чем отрабатывает php скрипт минифаера Предлагаю его выпилить из движка за ненадобностью. JS файлы итак идут минифицированые из коробки зачем их снова сжимать и тратить ресурсы и без того дохлого апача? Либо кешировать во временный js файл и отдавать его Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 20 декабря 2016 Рассказать Опубликовано: 20 декабря 2016 DLE не запускает свои JS функции, раньше чем загрузятся файлы JS скрипты. Скорее всего какие то ошибки в шаблоне у вас. Или вы сами вручную вызываетe в шаблоне какие либо функции JS из состава DLE. 42 минуты назад, morgenshtern сказал: Предлагаю его выпилить из движка за ненадобностью. Если вам не нужно, можете не включать это. 43 минуты назад, morgenshtern сказал: JS файлы итак идут минифицированые из коробки зачем их снова сжимать и тратить ресурсы и без того дохлого апача? Не нужно путать минификацию и Gzip сжатие, это совершенно разные вещи. Gzip сжатие это архивирование, которое уменьшает минифицированный файл раз в пять. 44 минуты назад, morgenshtern сказал: Либо кешировать во временный js файл и отдавать его Вообще то DLE так и работает, он не архивирует его каждый раз, а только один раз. Цитата Ссылка на сообщение Поделиться на других сайтах
morgenshtern 5 Опубликовано: 24 декабря 2016 Рассказать Опубликовано: 24 декабря 2016 (изменено) Автор Не знаю, у меня такая проблема или у всех, но решается она так в файле main.php меняем код на function strpos_arr($haystack, $needle) { if(!is_array($haystack)) $haystack = array($haystack); foreach($haystack as $what) { if(($pos = strpos($what, $needle))!==false) return true; } return false; } if ( strpos_arr($onload_scripts,"hs." ) OR strpos($tpl->result['content'].$tpl->copy_template, "hs.") !== false OR strpos($tpl->result['content'].$tpl->copy_template, "highslide") !== false ) { Всему виной был код ... var dle_search_value = ''; jQuery(function($){ hs.addSlideshow ... Изменено 24 декабря 2016 пользователем morgenshtern Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 25 декабря 2016 Рассказать Опубликовано: 25 декабря 2016 Не может этот код быть виной проблемы. И проблема только у вас, больше ни у кого ее нет. Скорее всего теги в шаблоне main.tpl расположили неправильно, например тег {AJAX} идет до тега {jsfiles} или еще что. Цитата Ссылка на сообщение Поделиться на других сайтах
morgenshtern 5 Опубликовано: 25 декабря 2016 Рассказать Опубликовано: 25 декабря 2016 Автор Тег AJAX на месте, тега jsfiles нет. Я имел ввиду что в массив добавляется $onload_scripts[] = "hs.addSlideshow..... Но highslide.js не подключается при этом Но почему ошибка возникала через раз, это конечно загадка Цитата Ссылка на сообщение Поделиться на других сайтах
neowaring 0 Опубликовано: 2 июня 2019 Рассказать Опубликовано: 2 июня 2019 Идентичная проблема, + не работала выпадающее меню. Решил проблему заменой файла engine/skins/javascripts/application.js Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.