Инструменты пользователя

Инструменты сайта

  • Показать страницу
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • wiki:config:javascript

    Различия

    Показаны различия между двумя версиями страницы.

    Ссылка на это сравнение

    Предыдущая версия справа и слеваПредыдущая версия
    wiki:config:javascript [2023/08/19 02:57] vladpolskiywiki:config:javascript [2024/08/15 01:53] (текущий) – внешнее изменение 127.0.0.1
    Строка 1: Строка 1:
     ====== JavaScript ====== ====== JavaScript ======
      
    -Для удобства «[[:wiki:dokuwiki|ДокуВики]]» позволяет использовать программистам [[wp>ru:JavaScript|JavaScript]]. Также как и [[:wiki:config:css|страницы стилей CSS]], все файлы JavaScript загружаются через программу-диспетчер с целью уменьшения количества HTTP-запросов, для кэширования, а также удаления пробелов и комментариев (настройка [[:wiki:config:compress|compress]]).+Для удобства «[[:wiki:dokuwiki|ДокуВики]]» позволяет использовать программистам [[wp>wiki:JavaScript|JavaScript]]. Также как и [[:wiki:config:css|страницы стилей CSS]], все файлы JavaScript загружаются через программу-диспетчер с целью уменьшения количества HTTP-запросов, для кэширования, а также удаления пробелов и комментариев (настройка [[:wiki:config:compress|compress]]).
      
     Эта статья даст общее представление о том, как скрипты JavaScript загружаются из ядра «ДокуВики», [[:wiki:plugins|плагинов]] и [[:wiki:template:template|шаблонов]]. Также здесь содержится информация об обработке событий и стиля программирования, когда JavaScript используются в ДокуВики. Эта статья даст общее представление о том, как скрипты JavaScript загружаются из ядра «ДокуВики», [[:wiki:plugins|плагинов]] и [[:wiki:template:template|шаблонов]]. Также здесь содержится информация об обработке событий и стиля программирования, когда JavaScript используются в ДокуВики.
    Строка 7: Строка 7:
     ===== Загрузка JavaScript ===== ===== Загрузка JavaScript =====
      
    -Все Java скрипты собираются и загружаются через {{ :wiki:xref:dokuwiki:lib:exe:js.php |}}, который объединяет все найденные файлы яваскрипта, убирает пробелы и комментарии (если включена опция [[ru:config:compress]]) и помещает результат в кэш. Также он (''js.php'') даёт команду браузеру помещать в кэш результат, так что, когда вы разрабатываете новый яваскрит, не забывайте сбрасывать кэш браузера (например Shift+F5, Shift+CTL+R и тому подобное) всякий раз, когда ваш скрипт изменён. Если ваш сайт сидит в облаке, в отдельных случаях может потребоваться touch его настроек.+Все Java скрипты собираются и загружаются через {{ :wiki:xref:dokuwiki:lib:exe:js.php |}}, который объединяет все найденные файлы яваскрипта, убирает пробелы и комментарии (если включена опция [[wiki:config:compress]]) и помещает результат в кэш. Также он (''js.php'') даёт команду браузеру помещать в кэш результат, так что, когда вы разрабатываете новый яваскрит, не забывайте сбрасывать кэш браузера (например Shift+F5, Shift+CTL+R и тому подобное) всякий раз, когда ваш скрипт изменён. Если ваш сайт сидит в облаке, в отдельных случаях может потребоваться touch его настроек.
      
     «ДокуВики» получает JavaScript из:  «ДокуВики» получает JavaScript из: 
    -  * автоматически сгенерированные яваскрипты (языковые строки, настройки конфигурации, [[ru:toolbar|панель инструментов]]);+  * автоматически сгенерированные яваскрипты (языковые строки, настройки конфигурации, [[wiki:toolbar|панель инструментов]]);
       * lib/scripts/*.js ((чтобы избежать излишней загрузки скриптов для тех, кто читает статью, содержимое ''edit.js'' и ''media.js'' загружается только в режиме редактирования или отображения медиафайлов));   * lib/scripts/*.js ((чтобы избежать излишней загрузки скриптов для тех, кто читает статью, содержимое ''edit.js'' и ''media.js'' загружается только в режиме редактирования или отображения медиафайлов));
       * lib/plugins/*/script.js;   * lib/plugins/*/script.js;
    Строка 16: Строка 16:
       * conf/userscript.js.   * conf/userscript.js.
      
    -Из вышеизложенного следует, что использование яваскриптов возможно в [[ru:templates|шаблонах]] и [[ru:plugins|плагинах]] (с помощью файла ''script.js''), а также возможно определить свои собственные скрипты в ''conf/userscript.js''.+Из вышеизложенного следует, что использование яваскриптов возможно в [[wiki:templates|шаблонах]] и [[wiki:plugins|плагинах]] (с помощью файла ''script.js''), а также возможно определить свои собственные скрипты в ''conf/userscript.js''.
      
     Также яваскрипт может быть добавлен в ''main.php'', расположенном в ''lib/tpl/<currenttemplate>''. Хорошо знакомый HTML-код <head> </head> принимает JavaScript. Также яваскрипт может быть добавлен в ''main.php'', расположенном в ''lib/tpl/<currenttemplate>''. Хорошо знакомый HTML-код <head> </head> принимает JavaScript.
    Строка 54: Строка 54:
     Указанный файл будет подключен (использован), только если файл с аналогичным имененм не подгружался ранее с помощью оператора ''include_once''. Данное имя файла будет доступно через любые другие скриптовые файлы (из всех плагинов), поэтому стоит давать понятное наименование такому файлу. Указанный файл будет подключен (использован), только если файл с аналогичным имененм не подгружался ранее с помощью оператора ''include_once''. Данное имя файла будет доступно через любые другие скриптовые файлы (из всех плагинов), поэтому стоит давать понятное наименование такому файлу.
      
    -Использование этого оператора имеет смысл, если разрабатываются несколько независимых [[ru:plugins|плагинов]], каждый из которых использует одну и ту же библиотеку яваскрипт. Использование оператора ''include_once'' несколько раз с одинаковым именем подключаемого файла даст гарантию того, что библиотека будет подгружена только один раз, даже если будет установлено несколько плагинов одновременно.+Использование этого оператора имеет смысл, если разрабатываются несколько независимых [[wiki:plugins|плагинов]], каждый из которых использует одну и ту же библиотеку яваскрипт. Использование оператора ''include_once'' несколько раз с одинаковым именем подключаемого файла даст гарантию того, что библиотека будет подгружена только один раз, даже если будет установлено несколько плагинов одновременно.
      
     ===== Рекомендации по написанию кода (программированию) ===== ===== Рекомендации по написанию кода (программированию) =====
    wiki/config/javascript.1692403037.txt.gz · Последнее изменение: 2023/08/19 02:57 — vladpolskiy