Про 1. не очень понял. Там же как бы буфферизация идет — каждый document.write собирается в длинную строку, а затем innerHTML делается один раз по окончании работы каждого загруженного скрипта (а не на каждый вызов d.wr)
2. На самом деле да, document.write(<script) — это вообще проблема (к счастью, все же, многие так не делают). Но на этот случай просто надо такие плохие оставлять обычным src, ибо я не вижу как это решить. Есть идеи?
3. Да, я думал про это — просто insertBefore понадежнее, чем самоделка insertAfter :) не хочу понижать надежность из-за академичности.
Думаю это плохая идея, потому что когда его вызывать — когда загрузились все скрипты? Долго ждать придется. Лучше уж все же выносить во внешние файлы. И на самом деле JQuery лучше держать локально и не вызывать через extsrc, а использовать extsrc для всяких виджетов, информеров, API — всего того, что нельзя локально скопировать.
Или вот еще интереснее задачка — есть у вас 10 счетчиков, которые выдали вам код с <script src — попробуйте-ка слить их в один файл у себя на стороне (учитывая что счетчики срабатывают именно при этом вызове того самого URL, который в src="" прописан).
К сожалению, в том-то и беда, что нельзя… Допустим мой скрипт загрузился первым — inline script еще не загрузился — я не могу его обработать… как только браузер его загрузит — он его исполнит — я его опять же не могу обработать…
«Валидность гарантирует, что в каком-то новом браузере, соответствующем стандартам, ваш сайт будет отображаться точно также, как отображается в нынешних.»
Единственное что хоть немного(чуть-чуть) это обещает — это ACID тесты… Гарантировать тут вообще никто ничего не гарантирует. Код может быть валидным и отображаться черт-те-как в разных браузерах.
Вот вы вебмастер сайта, вот вам дают какой-нибудь информер, который шеф обязательно хочет видеть прямо вот в начале страницы. И использует она document.write()… При этом скрипт генерится на удаленной серверной стороне… Давайте, дерзайте, слейте ее в один файл и всуньте в конец. Посмотрю я как это у вас получится.
Проблема как раз в том, что туча всякого дурдома до сих пор использует document.write… туча всякого дурдома не позволяет вам хранить их скрипт на вашем сервере.
Те же Google Maps API — давайте, слейте в один со своими скриптами.
Буфферизируется все, что выдает скрипт, пока не сработает следующий скрипт (или скрипты не закончатся). Затем один раз создается SPAN с этим содержимым (для каждого скрипта).
Если только кто-то не делает doc.write чего-то и ждет в скрипте результатов этого (мне даже трудно представить возможно ли такое) — то должно работать для всех тэгов скриптов и т.п. Есть идеи где такое возможно?
2. На самом деле да, document.write(<script) — это вообще проблема (к счастью, все же, многие так не делают). Но на этот случай просто надо такие плохие оставлять обычным src, ибо я не вижу как это решить. Есть идеи?
3. Да, я думал про это — просто insertBefore понадежнее, чем самоделка insertAfter :) не хочу понижать надежность из-за академичности.
Спасибо за комментарии.
<script src
— попробуйте-ка слить их в один файл у себя на стороне (учитывая что счетчики срабатывают именно при этом вызове того самого URL, который в src="" прописан).Единственное что хоть немного(чуть-чуть) это обещает — это ACID тесты… Гарантировать тут вообще никто ничего не гарантирует. Код может быть валидным и отображаться черт-те-как в разных браузерах.
Вот вы вебмастер сайта, вот вам дают какой-нибудь информер, который шеф обязательно хочет видеть прямо вот в начале страницы. И использует она document.write()… При этом скрипт генерится на удаленной серверной стороне… Давайте, дерзайте, слейте ее в один файл и всуньте в конец. Посмотрю я как это у вас получится.
Проблема как раз в том, что туча всякого дурдома до сих пор использует document.write… туча всякого дурдома не позволяет вам хранить их скрипт на вашем сервере.
Те же Google Maps API — давайте, слейте в один со своими скриптами.
в ту часть где asyncsrc — IE6 напрочь отказывается что-либо грузить и правильно работать…
код whiteposts.com/extsrc_js/extsrc-004.js
разгадки?..
www.youtube.com/watch?v=FPBACTS-tyg#t=1m30s
Буфферизируется все, что выдает скрипт, пока не сработает следующий скрипт (или скрипты не закончатся). Затем один раз создается SPAN с этим содержимым (для каждого скрипта).
Если только кто-то не делает doc.write чего-то и ждет в скрипте результатов этого (мне даже трудно представить возможно ли такое) — то должно работать для всех тэгов скриптов и т.п. Есть идеи где такое возможно?
Спасибо за подсказку :)