Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / подгрузка скриптов / 25 сообщений из 28, страница 1 из 2
04.10.2012, 09:54:51
    #37983020
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Вот есть кнопка, которая например делает чего-то там, скажем $('#button').addClass('error');
Пользователь открывает страницу и жмет эту кнопку, но если библиотека jquery еще не догрузилась, то случится ошибка, как это правильно делать?
...
Рейтинг: 0 / 0
04.10.2012, 10:15:52
    #37983051
Primus inter pares
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Можно проверить загружена ли уже
Код: javascript
1.
2.
3.
if(typeof jQuery == 'undefined'){
    // действия при НЕ ЗАГРУЖЕННОМ jQuery
}
...
Рейтинг: 0 / 0
04.10.2012, 10:18:36
    #37983056
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Может даже я не правильно описал проблему. В общем вот на примере, есть HTML который подгружается аяксом:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<link rel="stylesheet" type="text/css" href="http://static.xxx/assets/a2f4017/uploadify.css" />
<script type="text/javascript" src="http://static.xxx/assets/a2f4017/jquery.uploadify.js"></script>
<h3>File uploading</h3>
<div id="ajax-upload-form">
    <div class="upload-form">
.......
        $(document).ready(function() {
        $("#file").uploadify({
            height        : 30,
.......


Скрипт подгружается, но видимо уже позднее, чем выполняется $("#file").uploadify
и браузер ругается, что функция $.uploadify не определена.
...
Рейтинг: 0 / 0
04.10.2012, 10:38:41
    #37983101
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Hett,

Вариантов что делать -уйма
Самый простой в вашем случае - добавлять листенеры после полной загрузки

Тоесть например начинать в window.onload
Если у вас сложная клиентская часть(что врядли)- то посмотрите
В сторону require.js

Можете сами вешать слушатель на скрипт онлоад

Ну и т.д.
...
Рейтинг: 0 / 0
04.10.2012, 10:43:47
    #37983111
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Hett,

А - не увидел ваш второй пост с примером
Хтмл который подружается аяксом и содержит таги скриптов
Это жестокая жесть
Очень очень некрасиво и непрофессиональн
В основном разработчики дот нет до такого опускаются только

Но в любом случае скрипт онлоад никто не отменял
...
Рейтинг: 0 / 0
04.10.2012, 10:45:28
    #37983116
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
ифреймов васяВ основном разработчики дот нет до такого опускаются толькоДа
...
Рейтинг: 0 / 0
04.10.2012, 11:23:30
    #37983189
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Hett,

И опять я был не внимателен
Дело не в том -что это ужастно само по себе
Это просто не будет работать - скрипт не будет интерпретироваться
Если это делается через иннер хтмл
Создавайте элемент скрипт и добавляйте его в хидер
...
Рейтинг: 0 / 0
04.10.2012, 11:46:48
    #37983241
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
авторХтмл который подружается аяксом и содержит таги скриптов
Это жестокая жесть
А что такого страшного? Зачем их грузить на основной странице, если они скорее всего не нужны...
...
Рейтинг: 0 / 0
04.10.2012, 11:58:38
    #37983269
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
HettавторХтмл который подружается аяксом и содержит таги скриптов
Это жестокая жесть
А что такого страшного? Зачем их грузить на основной странице, если они скорее всего не нужны...

Дело не в том - когда, дело в том - как
Хотите отложенную загрузку - нет проблем

Для того, чтобы загрузить скрипт - создаете элемент script, прописываете ему src и добавляете в хидер
Хотите подгрузить части страницы, какой-либо контент и т.д?
Грузите аяксом данные
А хтмл генерируете на клиенте

раньше я бы вам посоветовал для генерации хтмл пользоваться нативной генерацией элементов
Но теперь я понял, что это слишком - title coupled - не хорошее решение
Используйте templates
Еть у жквери( и не только) свои методы работы с шаблонами, я лично предпочитаю undersore
...
Рейтинг: 0 / 0
04.10.2012, 12:00:51
    #37983276
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
простите, описка: unders c ore.js
...
Рейтинг: 0 / 0
04.10.2012, 12:22:24
    #37983313
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Hett,

Клиентская часть приложения - это помимо всего прочего визитная карточка разработчика
Одному богу и вам известно какой там на сервере говнокод
Но клиент виден всем

Ну и про оптимизацию работы приложения не забываем, и про пользователей
...
Рейтинг: 0 / 0
04.10.2012, 13:00:56
    #37983404
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Ифреймов ВасяОдному богу и вам известно какой там на сервере говнокод
Но клиент виден всемЧуть менее чем всем на это наплевать, как и на серверный говнокод. Главное чтобы юзабилити было юзабильным.
...
Рейтинг: 0 / 0
04.10.2012, 13:08:51
    #37983430
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Ифреймов ВасяДля того, чтобы загрузить скрипт - создаете элемент script, прописываете ему src и добавляете в хидер
Так или иначе, как я узнаю что он подгрузился? Событие onload наступит еще раз? Тогда можно словить гемороя с остальными обработчиками которые на него навешаны.
...
Рейтинг: 0 / 0
04.10.2012, 13:16:13
    #37983448
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
HettСобытие onload наступит еще раз?Что значит еще раз? У этого скрипта оно не наступало — самого скрипта же не было.
...
Рейтинг: 0 / 0
04.10.2012, 13:16:55
    #37983450
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
HettИфреймов ВасяДля того, чтобы загрузить скрипт - создаете элемент script, прописываете ему src и добавляете в хидер
Так или иначе, как я узнаю что он подгрузился?

Так же как и все остальные уже сто лет узнают

http://unixpapa.com/js/dyna.html
...
Рейтинг: 0 / 0
04.10.2012, 13:25:17
    #37983473
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Вот код Николаса Закаса

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
function loadScript(url, callback){

    var script = document.createElement("script")
    script.type = "text/javascript";

    if (script.readyState){  //IE
        script.onreadystatechange = function(){
            if (script.readyState == "loaded" ||
                    script.readyState == "complete"){
                script.onreadystatechange = null;
                callback();
            }
        };
    } else {  //Others
        script.onload = function(){
            callback();
        };
    }

    script.src = url;
    document.getElementsByTagName("head")[0].appendChild(script);
}
...
Рейтинг: 0 / 0
04.10.2012, 13:36:03
    #37983495
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
AntonariyHettСобытие onload наступит еще раз?Что значит еще раз? У этого скрипта оно не наступало — самого скрипта же не было.
Я говорил про событие onload Документа (окна), про скрипт не подумал, в общем все понял теперь.
...
Рейтинг: 0 / 0
04.10.2012, 13:41:28
    #37983511
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
AntonariyИфреймов ВасяОдному богу и вам известно какой там на сервере говнокод
Но клиент виден всемЧуть менее чем всем на это наплевать, как и на серверный говнокод. Главное чтобы юзабилити было юзабильным.

Тем кому на это не наплевать, пишут вот такие сайты:
http://www.hipmunk.com/
http://www.nytimes.com/skimmer
...
Рейтинг: 0 / 0
04.10.2012, 13:53:56
    #37983545
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Ифреймов ВасяAntonariyпропущено...
Чуть менее чем всем на это наплевать, как и на серверный говнокод. Главное чтобы юзабилити было юзабильным.

Тем кому на это не наплевать, пишут вот такие сайты:
http://www.hipmunk.com/
http://www.nytimes.com/skimmer То есть те, для кого писали эти сайты, проверяли за писателем код на предмет отсутствия говна в нем? Если они такие грамотные, почему сами не писали?
Ерунду какую-то городишь.
...
Рейтинг: 0 / 0
04.10.2012, 13:58:48
    #37983556
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
AntonariyИфреймов Васяпропущено...


Тем кому на это не наплевать, пишут вот такие сайты:
http://www.hipmunk.com/
http://www.nytimes.com/skimmer То есть те, для кого писали эти сайты, проверяли за писателем код на предмет отсутствия говна в нем? Если они такие грамотные, почему сами не писали?
Ерунду какую-то городишь.

я говорю о другом
что когда не наплевать на то, что пишешь и как - получаются такие интерестные продукты
которые не могут родиться, если не уделять должного внимания разработке клиентской части

на отсутствие плохого кода я проверяю человека, с которым планирую работать, или работой которого интересуюсь

качество же продукта(включая юзабилити) для конечного пользователя неизбежно связано с качеством кода - пусть и нет прямой зависимости
...
Рейтинг: 0 / 0
04.10.2012, 14:06:11
    #37983583
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Вася, "тем" и "те" это местоимения с разным смыслом, постарайся их не путать.

ифреймов васячто когда не наплевать на то, что пишешь и какНу а каким образом это относится к "клиент виден всем"? Еще раз говорю: почти все тем, кто видит клиент, наплевать на его код. Эти сайты можно сделать с помощью и говнокода и кода идеального. Всем тем, кто его видит, будет без разницы, что там за код, если юзабилити обоих вариантов не отличаются.
Улавливаешь? Качество кода важно лишь для того, кто будет его поддерживать.
...
Рейтинг: 0 / 0
04.10.2012, 14:13:36
    #37983613
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
AntonariyВася, "тем" и "те" это местоимения с разным смыслом, постарайся их не путать.

ифреймов васячто когда не наплевать на то, что пишешь и какНу а каким образом это относится к "клиент виден всем"? Еще раз говорю: почти все тем, кто видит клиент, наплевать на его код. Эти сайты можно сделать с помощью и говнокода и кода идеального. Всем тем, кто его видит, будет без разницы, что там за код, если юзабилити обоих вариантов не отличаются.
Улавливаешь? Качество кода важно лишь для того, кто будет его поддерживать.

Клиент виден всем котносится програмистам, таким как я, которые смотрят код прежде чем начинать сотрудничество с человеком
Наверное я непонятно выразился действительно

авторЭти сайты можно сделать с помощью и говнокода и кода идеального.
Практика показывает что нет
Когда количество кода javascript переваливает за 10 000 строк на одну страницу(а это происходит в single page applications)- говнокод перестает работать

По поводу юзабилити - не бывает сайтов хорошо проработанных в плане user experience и со спагетти на клиенте
Хотя опять повторю - прямой зависимости не прослеживается
Мне не попадалось, по райней мере
...
Рейтинг: 0 / 0
04.10.2012, 14:34:40
    #37983694
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
прежде чем начинать сотрудничество с человекомЕсли человек, например, ищет заказчиков, а не работодателя, то говнокод не имеет значения. Заказчики потому и заказывают, что сами не разбираются в предмете. В этом случае на первом месте всегда внешний вид и удобство.

Впрочем, не надо считать, что я оправдываю говнокод :)

Практика показывает что нетМоя практика показывает другое. Разметка страниц информационной системы сначала состояла из 100500 вложенных таблиц, а после того, как я с ней поработал, стала состоять из нескольких дивов. Ни дизайн ни юзабилити не помнялись, незначительно возросла скорость рендеринга, но пользователи и этого не заметили. Им это типа было надо? Нет. Это было нужно мне, потому что именно мне нужно натягивать иной дизайн на ту же разметку под фирстиль очередного заказчика. Тоже самое с js.
...
Рейтинг: 0 / 0
04.10.2012, 14:45:50
    #37983738
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Ифреймов ВасяТем кому на это не наплевать, пишут вот такие сайты:
http://www.hipmunk.com/
http://www.nytimes.com/skimmer Кстати второй сайт мне не понравился. Может там внутри все идеально, и адаптивный дизайн это хорошо, но он же тормозит адово при ресайзе. И юзабилити так себе. При выборе книги она закрывает всю страницу, и чтобы вернуться, хочется нажать "назад", а не работает! И лишь спустя какое-то время обнаруживаешь неприметный серенький крестик в левом верхнем углу. Видимо под маководов заточено.
...
Рейтинг: 0 / 0
04.10.2012, 15:03:41
    #37983788
Ифреймов Вася
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подгрузка скриптов
Моя практика показывает другое. Разметка страниц информационной системы сначала состояла из 100500 вложенных таблиц, а после того, как я с ней поработал, стала состоять из нескольких дивов. Ни дизайн ни юзабилити не помнялись, незначительно возросла скорость рендеринга, но пользователи и этого не заметили. Им это типа было надо? Нет. Это было нужно мне, потому что именно мне нужно натягивать иной дизайн на ту же разметку под фирстиль очередного заказчика. Тоже самое с js.

Я не про то, что юзабилити меняется, а про то, что есть неявная связь между качеством юзабилити и качеством кода
Она всегда прослеживается в моей практике

Если вы сможете показать какой нибудь пример сайта с прекрастными юзабилити характеристиками и говнокодом на заднем плане - то я буду удивлен, но благодарен за такой пример

Второй сайт заточен под оффлайн
Там прикол в том, что вы не имеете постоянного доступа к сети(скажем в самолете)
Скажем в аэропорту был инет - хапанули немного - сели в самолет
Но при этом имеете возможность читать новости не замечая этого

Или скажем по улице идете, прошли где вай-фай, запанули немного, и все проходит гладко
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / подгрузка скриптов / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]