Song Опубликовано 15 Апреля 2005 Жалоба Поделиться Опубликовано 15 Апреля 2005 Я тут недавеча решил сэкономить трафику. Решил вынести скрипты в отдельный js.Но столкнулся с тем, что в них указываются языковые макросы. Например:function delete_post(theURL) { if (confirm('{$ibforums->lang['js_del_1']}')) { window.location.href=theURL; } else { alert ('{$ibforums->lang['js_del_2']}'); } } И если скрипт вынести, он и знать не будет, что это за константы.Мысли какие есть? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 15 Апреля 2005 Жалоба Поделиться Опубликовано 15 Апреля 2005 А там их много таких языковых макросов? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
d1pro Опубликовано 15 Апреля 2005 Жалоба Поделиться Опубликовано 15 Апреля 2005 А ты их декларации в коде страницы оставь... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 16 Апреля 2005 Жалоба Поделиться Опубликовано 16 Апреля 2005 или передавай в кач-ве параметра в функцию Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Vic'er Опубликовано 16 Апреля 2005 Жалоба Поделиться Опубликовано 16 Апреля 2005 Код на основной странице (есдественно стоит выше обращения к внешнему скрипту):var js_del_1 = '{$ibforums->lang['js_del_1']}'; var js_del_2 = '{$ibforums->lang['js_del_2']}'; Это выносится в отдельный файл:function delete_post(theURL) { if (confirm(js_del_1)) { window.location.href=theURL; } else { alert (js_del_2); } } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 18 Апреля 2005 Автор Жалоба Поделиться Опубликовано 18 Апреля 2005 >>А там их много таких языковых макросов?Почти все скрипты, которые в скинах. >> или передавай в кач-ве параметра в функциюТогда я скорей трафика-то больше истрачу чем сокращу.Например, для вышеприведённой delete_post, она употребляется в каждом посте. Представляешь, в каждом посте ещё и строку в код включать? >>А ты их декларации в коде страницы оставь...>> Код на основной странице (есдественно стоит выше обращения к внешнему скрипту): >> var js_del_1 = '{$ibforums->lang['js_del_1']}';>> var js_del_2 = '{$ibforums->lang['js_del_2']}'; Интересный вариант, спасибо.Только как я понимаю, вары-то всё-равно нужно в скрипте писать не так ли? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Hostem Опубликовано 30 Апреля 2005 Жалоба Поделиться Опубликовано 30 Апреля 2005 А можно еще пару кб на страницу сэкономить, вынести: var js_del_1 = '{$ibforums->lang['js_del_1']}'; var js_del_2 = '{$ibforums->lang['js_del_2']}';в отдельный файл, в языковые папки и аттачить их уже типа так <script type="text/javascript" src='/lang/{$ibforums->lang_id}/jslang_topic.js'></script> только вместо таких {$ibforums->lang['js_del_1']} писать номальный текст для каждого языка Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 30 Апреля 2005 Автор Жалоба Поделиться Опубликовано 30 Апреля 2005 При этом теряется основной принцип: форум должен администрироваться из одного места, а не бегать по десятку мест в ftp. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
NvG Опубликовано 3 Мая 2005 Жалоба Поделиться Опубликовано 3 Мая 2005 А у меня есть предложение просто не выносить скрипты в отдельный Js, а оставить их в теле страницы. Почему?1. Браузер оставит страницу белой, пока не догрузится самый последний скрипт.2. Отдельные js не сжимаются. Так что ИМХО лучше оставить весь js в теле страницы [1115126603:1115126724]Ну или если уж хотется вынести, то написать отдельный модуль, выдающий js, и писать что-то типа<script language="JavaScript" type="text/javascript" src="index.php?act=js"></script> Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 4 Мая 2005 Автор Жалоба Поделиться Опубликовано 4 Мая 2005 Ну вы как хотите, я уже всё сделал, у меня довольно хорошо работает.Никаких белых страниц нет. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.