7:07 PM Костыль JQ как сделать scrtipt с помощью append | |
Я постигаю JQ поэтому у меня бывают огрехи новичка. И я задумал вызывать функцию из внешнего скрипта с помощью другого скрипта при учёте что внешний скрипт не объявлен. В итоге у меня всё вышло. Я сделал костыль который генерирует содержимое скрипта вместе с тегами SCRIPT с помощью append. ТАК ДЕЛАТЬ НЕ НАДО. Это сейчас я разбираю неудачный пример. И я придумал вот что. Есть скрипт, который работает с текстом, расположенным на форме. В зависимости от изменения формы текст или нужен или не нужен или обрабатывается скриптом или нет. Скрипт там элементарный меняет высоту style top букв в строке и двигает их туда-сюда. Для красоты в общем. Чтобы он не болтался в коде (так как я стал сильно путаться) я его запхал его в отдельный файл. Думаю это особого значения не имеет. Логика в итоге у страницы вышла такая: После загрузки страницы срабатывает скрипт работающий с буквами, который может быть вызван снова, в определённых положениях формы. Страница загрузилась, скрипт сработал, в процессе его работы в блок hiddenScripts добавляются внешние скрипты с defer, последним добавляется скрипт в котором находится функция start_jumping() и сам её вызов в отдельных тегах скрипт. Если пользователь нажимает на регистрация, то блок hiddenScripts становится empty, а после в него загружается логика ошибок заполнения формы. Если форма заполнена верно, то hiddenScripts опять очищается и снова наполняется теми же скриптами что были при загрузке. как-то так.
Всё работает. НО. Так делать не стоит. Почему? Это очень плохой стиль. Пользователю нужно отдавать сразу все скрипты JS с которыми будет работать его страница. Всегда можно найти альтернативное решение или переписать код. В моём случае я просто останавливал скрипт на момент заполнения формы. Это гораздо лучшее решение, чем принудительно загружать и убирать блоки с внешними скриптами.
| |
|
Всего комментариев: 0 | |