А если у меня такая винда и потестить приложение надо, так что тогда делать? Вот и ищем способы. Этот в копилку в том числе.
Интересные вы какие, честное слово!
Это клиенты требуют, которым просто не охота у себя на фирме устанавливать браузеры у сотрудников, вот они и поддерживают жизнь в этих браузерах. Причем для интранет приложений иногда бывает единственное требование к браузерам — это вся линейка IE начиная от 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>";
Позволю себе ответить на счет Европы — снижения рождаемости.
ИМХО «Детство» долгое, а детородный возраст — нет. Оптимальный возраст для рождения ребенка для женщины 20 — 30 лет, а сейчас на западе многие рожают под 40 и позже и то при помощи толпы докторов от зачатия до родов. Ну и плюс, как заметил автор, ребенок — часть «проекта». Сначала «детство», потом — карьера, а потом дети, а потом снова карьера…
Вы подняли важную тему! Соглашусь с вами на 100%, что «дамп» — это зло с которым надо бороться. Мне попадался в руки кусок кода, в котором был один обработчик «Button1_Click» и код на 2000 строк от вычитки из БД до генерации Word и Excel. Выглядело смешно, но кому-то же довелось сопровождать это «чудо», а не просто поржал и забыл…
Поделюсь своим опытом на этот счет:
Мне удается избегать «дампов сознания» путем рефакторинга в процессе написания кода (предварительный анализ тоже не исключаю). То есть пишется несколько строк, затем анализ — можно ли это вынести, например, в отдельный метод или создать доп. переменные вместо дублирующихся длинных цепочек вызовов. Потом еще несколько строк — снова анализ. Еще я думаю, могу ли я использовать уже написанный код. «Дубли» (даже логические) — это зло не меньшее, чем «дамп сознания». Попробуйте хотя бы баг исправить в дублях и вы поймете о чем я, про новый функционал вообще молчу.
В процессе, перебираю получившиеся методы, может их можно собрать в классы или распределить по уже имеющимся и т. д. и т.п.
Такой процесс вошел у меня в привычку и окупает себя при дальнейшем сопровождении и тестировании. Иногда бывают приятные «бонусы» в виде того, что удачно созданный таким образом код может без проблем быть использован в других приложениях и экономить время. Этот подход дает очень интересные результаты.
А вот написать «Дамп сознания» и потом его структурировать — задача потрудней… Порой этот код уже нельзя «вывести из потока в цивилизованное русло» просто не стерев все и не написав сначала уже как надо.
Спасибо!)
Интересные вы какие, честное слово!
IE6 до сих пор еще требуют, пусть это и анахронизм, но тем не менее…
JS — окошко, которое подключалось через тэг script на любой сайт.
Надо было через JS догружать данные по клику.
У меня были сделаны страницы на сервере, которые отдавали данные в виде js.
Запрос делался как в этой статье для Оперы, только без установки события — t._callback.
Отлично все работает во всех браузерах.
Вот пример метода отправки запрсов, containerName — это div или другой html тэг, в который вставляется результат выполнения скрипта.
серверная страница отдавала результат примерно в таком виде:
или просто скрипт:
Спасибо за статью! )
Поздравляю Вас с первым и удачным опытом!)
ИМХО «Детство» долгое, а детородный возраст — нет. Оптимальный возраст для рождения ребенка для женщины 20 — 30 лет, а сейчас на западе многие рожают под 40 и позже и то при помощи толпы докторов от зачатия до родов. Ну и плюс, как заметил автор, ребенок — часть «проекта». Сначала «детство», потом — карьера, а потом дети, а потом снова карьера…
Поделюсь своим опытом на этот счет:
Мне удается избегать «дампов сознания» путем рефакторинга в процессе написания кода (предварительный анализ тоже не исключаю). То есть пишется несколько строк, затем анализ — можно ли это вынести, например, в отдельный метод или создать доп. переменные вместо дублирующихся длинных цепочек вызовов. Потом еще несколько строк — снова анализ. Еще я думаю, могу ли я использовать уже написанный код. «Дубли» (даже логические) — это зло не меньшее, чем «дамп сознания». Попробуйте хотя бы баг исправить в дублях и вы поймете о чем я, про новый функционал вообще молчу.
В процессе, перебираю получившиеся методы, может их можно собрать в классы или распределить по уже имеющимся и т. д. и т.п.
Такой процесс вошел у меня в привычку и окупает себя при дальнейшем сопровождении и тестировании. Иногда бывают приятные «бонусы» в виде того, что удачно созданный таким образом код может без проблем быть использован в других приложениях и экономить время. Этот подход дает очень интересные результаты.
А вот написать «Дамп сознания» и потом его структурировать — задача потрудней… Порой этот код уже нельзя «вывести из потока в цивилизованное русло» просто не стерев все и не написав сначала уже как надо.
Извините за слишком длинный комментарий.