Joel написал интересную статью в которой описывает и даёт интерпретацию одного из ново-введений в бизнесе - знающие английский прочитают полную версию, для остальных краткое содержание:
Типичной картиной открывающейся перед поситителями одного из сетей кафe является достаточно длинная очередь к кассе по утрам. Однажды утром, посетители обнаружили специального представителя компнии прогуливающегося вдоль очереди, собирающего заказы у тех кто только что встал в очередь и передающего их по радиотелефону на кассу (где помимо расчёта происходит собственно комплектация заказа на вынос).
На первый взгляд естественным объяснением появления данного человека является оптимизация поступления заказов и собственно увеличение скорости обслуживания. Но поскольку мы имели в данном случае дело с достаточно типовыми заказами которые не имеют эффекта накапливания (как например в случае с порцией пирожков изготовляемых на одном большом противне) и увеличение "прохода" (т.е. скорости обслуживания в данном случае) не наблюдалось, то возник интерес в понимании истинной причины появления данного человека.
По утверждению автора статьи единственной причиной является предотвращение покидания клинтами очереди (слишком длинной) и собственно магазина. Многие разместившие заказ считают своим этическим долгом дождаться прохождения очереди и получения своего заказа уже не зависимо от того насколько долго придётся ждать.
В качестве послесловия предлагается задуматься - где ещё подобное удержание клиента можно было бы применить в реальной жизни и собственно обратить себе на пользу.
вторник, 26 августа 2008 г.
пятница, 15 августа 2008 г.
Как заменить ряд (tr) в таблице используя javascript без использования innerHTML в IE
В интернет браузере IE от MS существует хорошо известное ограничение на работу с таблицами - вы не можете заменить какой-либо ряд таблицы используя innerHTML. Данное ограничение известно только благодаря тому, что многие разработчики на javascript сталкивались с ним и в последствии вынуждены были менять архитектуру системы, чтобы обойти это ограничение. Не обошло это и нас.
К счастью недавно я наткнулся на пост который объясняет природу данного ограничения, и, что наибоее важно, предлагает как его обойти методами javascript!!
Пользуясь случаем :) выразим признательность автору данного поста - такие бриллианты не часто встречаются среди постов.
Ниже приводиться небольшой пример демонстрирующий данный принцип .. для того чтобы увидеть как он работает достаточно зайти на любую страницу тестового пространства от w3schools.com, вставить код приведённый ниже и запустить его)
<head>
<script type="text/javascript">
function change()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"
var rrr=document.getElementById('8')
var tb = document.getElementById('2');
tb.parentNode.replaceChild(rrr, tb);
}
function add()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"
var rrr=document.getElementById('8')
var tb = document.getElementById('2');
tb.parentNode.insertBefore(rrr, tb);
}
</script>
</head>
<body>
Choose one or another operation (cannot use both in this demo) <br /><input type="button" onclick="add()" value="Add">
<input type="button" onclick="change()" value="Change">
<table id="22" border=1>
<tr id="1"><td>2</td><td>3</td></tr>
<tr id="2"><td>2</td><td>3</td></tr>
</table>
<span id="3" style='visibility:hidden'></span>
</body>
</html>
Обратите внимание, что здесь нет необходимости знать какому элементу принадлежит ряд который будет заменён или искать какой порядковый номер имеет данный ряд - достаточно иметь ссылку на сам элемент (который будет замещён) и по нему берётся элемент которому он принадлежит tb.parentNode и он же используется в операции замены (replaceChild) вторым параметром (элемент который надо заменить).
К счастью недавно я наткнулся на пост который объясняет природу данного ограничения, и, что наибоее важно, предлагает как его обойти методами javascript!!
Пользуясь случаем :) выразим признательность автору данного поста - такие бриллианты не часто встречаются среди постов.
Ниже приводиться небольшой пример демонстрирующий данный принцип .. для того чтобы увидеть как он работает достаточно зайти на любую страницу тестового пространства от w3schools.com, вставить код приведённый ниже и запустить его)
<head>
<script type="text/javascript">
function change()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"
var rrr=document.getElementById('8')
var tb = document.getElementById('2');
tb.parentNode.replaceChild(rrr, tb);
}
function add()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"
var rrr=document.getElementById('8')
var tb = document.getElementById('2');
tb.parentNode.insertBefore(rrr, tb);
}
</script>
</head>
<body>
Choose one or another operation (cannot use both in this demo) <br /><input type="button" onclick="add()" value="Add">
<input type="button" onclick="change()" value="Change">
<table id="22" border=1>
<tr id="1"><td>2</td><td>3</td></tr>
<tr id="2"><td>2</td><td>3</td></tr>
</table>
<span id="3" style='visibility:hidden'></span>
</body>
</html>
Обратите внимание, что здесь нет необходимости знать какому элементу принадлежит ряд который будет заменён или искать какой порядковый номер имеет данный ряд - достаточно иметь ссылку на сам элемент (который будет замещён) и по нему берётся элемент которому он принадлежит tb.parentNode и он же используется в операции замены (replaceChild) вторым параметром (элемент который надо заменить).
пятница, 1 августа 2008 г.
Доверие к социальной политике государства
"Центральная больница расширит платный прием: С 1 августа Ида-Таллиннская Центральная больница расширит прием на платные услуги, поскольку спрос пациентов и потенциал больницы превышает объемы заключенного с Больничной кассой договора...."
No comments.
И ещё одна новость:
Государство не согласилось платить налог с оборота за операционный стол, приобретенный на собранные во время акции «Jõulutunnel» пожертвования, поэтому Фонду поддержки Таллиннской детской больницы пришлось собирать дополнительные средства для его покупки.
No comments.
И ещё одна новость:
Государство не согласилось платить налог с оборота за операционный стол, приобретенный на собранные во время акции «Jõulutunnel» пожертвования, поэтому Фонду поддержки Таллиннской детской больницы пришлось собирать дополнительные средства для его покупки.
Подписаться на:
Сообщения (Atom)