Pull to refresh
5
0
Send message
Отличная статья! Просто и доступно рассказано, вам удалось меня заинтересовать!
Спасибо!)
Ну так здесь хоть SQL. В некоторых голливудских фильмах про русских вообще тарабарщину пишут вместо русских слов… Там вообще жесть )
А если у меня такая винда и потестить приложение надо, так что тогда делать? Вот и ищем способы. Этот в копилку в том числе.
Интересные вы какие, честное слово!
Это клиенты требуют, которым просто не охота у себя на фирме устанавливать браузеры у сотрудников, вот они и поддерживают жизнь в этих браузерах. Причем для интранет приложений иногда бывает единственное требование к браузерам — это вся линейка IE начиная от IE6. Я работаю веб-программистом и очень часто сталкиваюсь с этим. У нас на фирме все давно смирились с этим. В конце-концов, кто платит тот и заказывает музыку.
тьфу… Не то запостилось )
IE6 до сих пор еще требуют, пусть это и анахронизм, но тем не менее…
Не могу плюсовать
Подход описанный в моем комментарии. Есть там правда особенности и куча всяких «хаков» применять пришлось, но для моей простой задачи он вполне подошел.
В IE6 такой подход тоже работает.
У меня была подобная задачка:
JS — окошко, которое подключалось через тэг script на любой сайт.
Надо было через JS догружать данные по клику.
У меня были сделаны страницы на сервере, которые отдавали данные в виде js.
Запрос делался как в этой статье для Оперы, только без установки события — t._callback.
Отлично все работает во всех браузерах.

Вот пример метода отправки запрсов, containerName — это div или другой html тэг, в который вставляется результат выполнения скрипта.

/* $$DoScriptRequest('content', 'http://test.page.ru/', { name: 'param', value: 'test' }, { name: 'param1', value: 'test1' });  */
function $$DoScriptRequest(containerName, url)
{
    var params = "?t=" + (new Date()).getTime();
    if (arguments.length > 2)
    {        
        for (var i = 2; i < arguments.length; i++)
        {
            var name = arguments[i].name;
            var value = escape(arguments[i].value);                        
            params += "&" + name + "=" + value;
        }
    }   
    
    var script = document.createElement("script");
    script.setAttribute('type', 'text/javascript');
    script.setAttribute('src', url + params);    

    var container = document.getElementById(containerName);
    container.innerHTML = "";
    container.appendChild(script);  
}


серверная страница отдавала результат примерно в таком виде:

 var container = document.getElementById('divId');
 container.innerHTML = "<b>my html</b>";


или просто скрипт:

function myTest()
{
    alert('Test');
}
myTest();


Спасибо за статью! )

Очень интересно было почитать. Спасибо за статью!
Поздравляю Вас с первым и удачным опытом!)
Позволю себе ответить на счет Европы — снижения рождаемости.
ИМХО «Детство» долгое, а детородный возраст — нет. Оптимальный возраст для рождения ребенка для женщины 20 — 30 лет, а сейчас на западе многие рожают под 40 и позже и то при помощи толпы докторов от зачатия до родов. Ну и плюс, как заметил автор, ребенок — часть «проекта». Сначала «детство», потом — карьера, а потом дети, а потом снова карьера…
Очень интересная статья! Спасибо за пост!)
Критика учтена — статья исправлена.
Вы подняли важную тему! Соглашусь с вами на 100%, что «дамп» — это зло с которым надо бороться. Мне попадался в руки кусок кода, в котором был один обработчик «Button1_Click» и код на 2000 строк от вычитки из БД до генерации Word и Excel. Выглядело смешно, но кому-то же довелось сопровождать это «чудо», а не просто поржал и забыл…

Поделюсь своим опытом на этот счет:
Мне удается избегать «дампов сознания» путем рефакторинга в процессе написания кода (предварительный анализ тоже не исключаю). То есть пишется несколько строк, затем анализ — можно ли это вынести, например, в отдельный метод или создать доп. переменные вместо дублирующихся длинных цепочек вызовов. Потом еще несколько строк — снова анализ. Еще я думаю, могу ли я использовать уже написанный код. «Дубли» (даже логические) — это зло не меньшее, чем «дамп сознания». Попробуйте хотя бы баг исправить в дублях и вы поймете о чем я, про новый функционал вообще молчу.
В процессе, перебираю получившиеся методы, может их можно собрать в классы или распределить по уже имеющимся и т. д. и т.п.

Такой процесс вошел у меня в привычку и окупает себя при дальнейшем сопровождении и тестировании. Иногда бывают приятные «бонусы» в виде того, что удачно созданный таким образом код может без проблем быть использован в других приложениях и экономить время. Этот подход дает очень интересные результаты.

А вот написать «Дамп сознания» и потом его структурировать — задача потрудней… Порой этот код уже нельзя «вывести из потока в цивилизованное русло» просто не стерев все и не написав сначала уже как надо.

Извините за слишком длинный комментарий.

Information

Rating
Does not participate
Registered
Activity