Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Почему document.write(unescape (https://javascript.ru/forum/misc/47933-pochemu-document-write-unescape.html)

rommeq 12.06.2014 22:09

Почему document.write(unescape
 
Почему некоторые скрипты нужно подключать так:
document.write(unescape("%3Cscript id='xnfjht' src='" + (("https:" == document.location.protocol) ? "https://" : "http://") +
"site.ru/scripts/script.js' type='text/javascript'%3E%3C/script%3E"));

Почему нельзя подключить просто, через <script src="..."></script>
Тот же jQuery рекомендуют грузить так:
document.write(unescape("%3Cscript src='/js/jquery-1.6.1.min.js' type='text/javascript'%3E%3C/script%3E"));

MallSerg 12.06.2014 23:46

Тебя обманули =)
Скрипт можно подключать через <script src="..."></script>
И имхо: все скрипты должны быть в шапке HTML рядом с другими скриптами.

rommeq 13.06.2014 12:33

)) Тогда не только меня обманули:
http://jquery.page2page.ru/index.php...0%B8%D1%85_CDN

В чем разница?

dmitriymar 13.06.2014 13:05

Цитата:

Сообщение от MallSerg
И имхо: все скрипты должны быть в шапке HTML рядом с другими скриптами.

и тебя обманули


Цитата:

Сообщение от rommeq
В чем разница?

в случае с врайт результат выполнения этой js функции "впечатывается" html код на клиенте и результатом "впечатывания" можно управлять программно, в случае <script> - приходит с сервера в html жестко забитым. И это не все варианты подключения скриптов на страницы
основы достаточно почитать , а не бежать задавать вопрос

rommeq 13.06.2014 13:14

Спасибо, dmitriymar, что вписывается в документ это ясно, не понятны последствия, в каких случаях недопустим вариант <script> ?
Или где можно почитать об этом? не нашел.

MallSerg 13.06.2014 13:36

Цитата:

Сообщение от dmitriymar
Сообщение от MallSerg
И имхо: все скрипты должны быть в шапке HTML рядом с другими скриптами.
тебя обманули

Это мои собственное мнение и мне его никто не навязывал. =)
Для подключения скриптов есть общепринятое расположение в <head>. К сожалению стандарт HTML достаточно свободен и не запрещает размещать скрипты где угодно.
Попробую привести аналогию например ходить по большому в своей квартире можно где угодно в зале на кухне или же на балконе
но имхо лучше делать это только в туалете =)))).

Цитата:

Сообщение от rommeq
)) Тогда не только меня обманули:
http://jquery.page2page.ru/index.php...0%B8%D1%85_CDN
В чем разница?

ПО поводу приведенного примера =)
В нем очень много плохого
1. Подключаются разные версии jQuery
2. Условие if (typeof jQuery == 'undefined') всегда истинно и не имеет смысла
3. сначала подключается
document.write(unescape("%3Cscript src='/js/jquery-1.6.1.min.js' type='text/javascript'%3E%3C/script%3E"));
Затем подгружается и подключается
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js"></script>
т.е. всегда будут подключатся две библиотеки разных версий
4. document.write может уничтожить текущую страницу если на момент выполнения скрипта document.onreadystatechange == "true"

И еще одно имхо
Ни когда не пользуйтесь советами и статьями под которыми нет комментариев

MallSerg 13.06.2014 13:41

И еще unescape уже лет 10 как вышла из моды

dmitriymar 13.06.2014 16:54

Цитата:

Сообщение от MallSerg
Для подключения скриптов есть общепринятое расположение в <head>

ок, а как же мнение общепризнанных авторитетов? Закаса? Османи?.. тесты в конце концов?

MallSerg 13.06.2014 19:50

какие тесты?

dmitriymar 13.06.2014 22:55

Цитата:

Сообщение от MallSerg
какие тесты?

я уже сказал кого читать там же тесты и найдёшь, да и погуглить не помешает на эту тему


Часовой пояс GMT +3, время: 15:00.