Тэг ‘ie’

Ошибка в Internet Explorer Если вы щелкнули ссылку, возможно, что она устарела

Натолкнулся на непонятное поведение Internet Explorer - при попытке открыть страницу вываливается страница 404 и Internet Explorer выдаёт ошибку

Не удается найти веб-страницу

  • Возможно, сделана опечатка в адресе
  • Если вы щелкнули ссылку, возможно, что она устарела

При этом в остальных браузерах никаких опчаток или старых страниц - всё открывается, всё работает. Что самое интересное, на сайте была настроена своя страница ошибки 404, но она не появлялась в IE.

Аналогичная ситуация встречалась на Joomla (Joostina?) при авторизации..

Как оказалось, IE  пытался загрузить файлы, которых не было на сервере. То есть, сама страница грузилась нормально, но, доходя до определённого момента, не могла загрузить требуемый файл (в конкретном случае - был .htc файл) и выдавала ошибку “страница устарела”.. Естественно, остальные браузеры эту ошибку не выдавали.

Возможно, такая реализация более правильна, чем отображение страницы без предусмотренных поведений - создатель-разработчик сайта просто вынужден разобраться, в чём именно дело.

Опубликовано Январь 23, 2012 | автор: levik  |  Нет комментариев »

jquery png fadeIn fadeOut и чёрная обводка картинок

Несмотря на “корректную” реализацию прозрачности png в IE версии выше 6, при использовании Jquery функций fadeIn, fadeOut (а также fadeTo.. и вообще любых операций с прозрачностью), вокруг  прозрачных PNG-изображений создаётся чёрный ореол (чёрная обводка PNG-изображения).

Дело в том, что в IE версий >6 прозрачность реализована также при помощи фильтров Читать целиком »

Опубликовано Ноябрь 20, 2011 | автор: levik  |  Нет комментариев »

В IE не работает post в jQuery - callback в internet Explorer

Собственно, из названия несложно догадаться, что во всех браузерах $JQuery.post(…) работает нормально, а в Internet Explorer - не совсем. Если точнее - не вызывается callback-функция после отправки параметров на сервер (на сервере действия происходят - проблема только в вызове Callback)

Как правило, достаточно настроить сервер для отдачи соответствующих заголовков: про решение проблемы с post jquery callback в IE

Опубликовано Август 5, 2011 | автор: levik  |  Нет комментариев »

Microsoft залатала Уязвимость IE

По результатам атаки китайских хакеров была найдена очередная критическая уязвимость в браузере Internet Explorer. Корпорация Microsoft ошибку быстро признала и выпустила “внеочередной” патч, который можно найти тут, а информацию - по ссылке. Если на компьютере включена автоматическая установка обновлений (и есть откуда ставить), то патч, скорее всего уже установлен.

Следует отметить, что ошибка прошла практически все версии Internet explorer-a, и публично выявилась лишь “благодаря” хакерам. Такого рода уязвимости (выявленные без участия представителей компании, до выпуска заплаток) прозвали 0-day уязвимости. Уязвимость позволяла удаленно выполнять код на компьютере пользователя. А король-то голый :)..  Заплатка выпущена для версий ie начиная с 5.

Скачок скачиваний Firefox

Однако, несмотря на выпуск патча, похоже, количество пользователей internet explorer заметно сократилось, а количество загрузок Mozilla Firefox и Opera резко подпрыгнуло :) Информацию о загрузке Google Chrome компания Google не предоставила. :)

На уровне правительства во многих европейских странах сделаны официальные заявления о “безопасности” Internet Explorer. Возможно, ie для многих пользователей уже никогда не станет безопасным браузером.

При установке новой системы не забыть залатать дырку!!!

* несмотря на выпуск заплатки, следует быть внимательным - не стоит запускать подозрительные приложения, файлы полученные из сомнительных источников, файлы, находящиеся по ссылкам из ICQ и не забывать обновлять антивирусные базы..

Опубликовано Январь 23, 2010 | автор: levik  |  Комментарий (1) »

FireFox- подключение по умолчанию. “Выберите сетевое подключение”

При работе с Mozilla FireFox периодически (обычно, в случаях, когда сетевой ресурс, к которому происходило обращение был недоступен - либо просто не существовал, либо при проблемах с интернетом) браузер выдавал окошко “Выберите сетевое подключение”. Как ни странно, Internet Explorer в таких ситуациях “молчал”.

Поскольку, довольно часто пользуюсь Мозиллой “без сети” (но не “автономно” - при установке галочки “Работать автономно”, не открываются локальные сайты) , а сообщение “выпадало” со слегка раздражающей периодичностью…

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

Итак, проблема:
Mozilla Firefox запрашивает выбор сетевого подключения при невозможности открытия сетевого ресурса. При этом до закрытия окна браузер фактически останавливает работу… Отображаются только открытые страницы. Дальнейшая навигация невозможна.

Решение:
Заходим IE - Свойства обозревателя (либо, Пуск-Панель управления - Свойства обозревателя)
Вкладка “Подключения”. Ставим точку напротив “Никогда не использовать”.

Как ни странно (казалось, бы относится к Internet Explorer-у), но помогло. Теперь, при отсутствии подключения/недоступности ресурса, все ограничивается лишь кратковременным ожиданием.

ps. Также исчезло окно “Выберите сетевое подключение” у Mozilla Thunderbird.

Опубликовано Сентябрь 13, 2009 | автор: levik  |  Комментарий (1) »

javascript изменяем свойство action формы - объекта form

Потребовалось перед отправкой формы изменить “адресат” - action у формы. По идее ничего сложного -
document.form1.action = 'new_address.html';
или аналогичные

document.getElementById('form1').action = 'new_address.html';
document.forms[0].action = 'new_address.html';

однако, такого рода конструкция работает везде, кроме internet explorer…
Объясняется это тем, что в IE нет различий между свойствами и атрибутами.
Поиск подсказал, что для изменения action у формы можно использовать setAttribute
document.form1.setAttribute("action","'new_address.html")
Но и в этом случае, internet explorer не порадовал.
Однако, различия, все-таки обнаружены - оба варианта для internet explorer:
- для случая “form1.action = …” браузер выдал ошибку “object doesn’t support …”;
- для случая “form1.setAttribute();” ie отправляет по старому адресу;

После очередной порции поисков по интернету, размышления над JavaScript мануалами изобразил что-то вроде:

o=document.getElementById('form1');
o.setAttribute("action","new_address.html"); // в IE "пустышка", но ошибку не выдает
// рабочая конструкция для IE - изменяет action для формы путем перебора всех атрибутов
for (var i=0; i < o.attributes.length; i++) {
if (o.attributes[i].nodeName == 'action') {
o.attributes[i].nodeValue = 'new_address.html';
break;
}
}

Понимаю, что решение далеко от идеального, однако, работает :)
Да здравствует IE!..
ps. В очередной раз встает вопрос “А для кого стандарты?” :)

Опубликовано Июль 1, 2009 | автор: levik  |  Комментарий (1) »

Защита информации сайта от копирования

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

Но сейчас не об этом.

Как защитить сайт от копирования?

0. Первое и самое главное, что следует усвоить: Если сайт можно просмотреть, то его можно и скопировать. Поэтому, вся так называемая защита от копирования, обычно помогает от пользователя неискушенного. Хотя, чаще всего, именно такие и хотят “скопировать” текстовую информацию или картинки с сайта.

Ну что ж.. А теперь перейдем к приемам, которые помогут защитить Ваш сайт от копирования:

1. Запрещаем кэширование страниц сайта. Это можно сделать несколькими способами:
Тэг HTML:
<meta http-equiv="Pragma" content="no-cache" />
или:
<meta http-equiv="Cache-Control" content="no-cache" />
Или
<meta http-equiv="no-cache" />

HTTP-заголовок (header):

Прочитать более подробно о кэшировании страниц

2. Запрещаем вызов контекстного меню в Internet Explorer
<body oncontextmenu="return false;" ondragstart="return false;">

3. Запрещаем выделение текста для копирования в Internet Explorer:

<script language="JavaScript">
document.onselectstart = returnfalse;
//запрещаем выделение
document.ondragstart = returnfalse;
//запрещаем перетаскивание
function returnfalse() {
return false;
}
</script>

4. пользуемся функциями escape | unescape
<script language="javascript">
mystring = "%u0412%u0441%u0442%u0430%u0432%u044C%u0442%u0435%20%u0442%u0435%u043A%u0441%u0442.";
document.write (unescape(mystring));
</script>

5. Для защиты изображений от копирования рекомендуется использовать так называемые водяные знаки или ватермарки (watermark) - наложение на изображение “полупрозрачного” изображения с названием своего сайта, или любого другого изображения, которое “идентифицирует” Вас, как владельца. Многие владельцы сайтов отказываются от копирования изображений с водяными знаками, на которых указан сайт “оригинал”.

6. Для защиты текста сайта от копирования  существуют сервисы, отслеживающие уникальность текста. Например CopyScape.com. Конечно же, по сути, сервис напрямую не защищает текст от копирования, однако, если в сети появится сайт с текстом, который “очень похож” на текст Вашего сайта, Вы об этом узнаете, и сможете сообщить “куда надо” :)

Опубликовано Июнь 17, 2009 | автор: levik  |  Комментарий (1) »

в IE 6 появляется дополнительная пустота

При просмотре верстки в IE 6 у некоторых элементов могут появляться дополнительные “пустоты”, которые выступают за пределы элемента. Просто белая “торчащая” полоска. :) Иногда к ним можно относиться не слишком критично - небольшое увеличение однотонного отступа в некоторых случаях может быть допустимо. Однако что делать, если из-за этого отступа сбивается фон, уходят “на нет” все усилия по созданию скругленных углов?

Для начала попробовать вычислить “торчащий” элемент, прописывая в css для ie ( if lte IE 6) border предполагаемого элемента, или заполняя этот элемент парой-тройкой цифр-букв. Иногда от непонятных пустот в IE помогает избавиться дописанный &nbsp; в “глючный” элемент. Или, как вариант, прописать для выпирающего элемента css-свойство zoom:1; которое является специфичным для Internet Explorer и влияет на так называемый hasLayout, отсутствие или наличие которого определяет ряд специфичных iE-багов: удвоение отступа плавающего элемента , 3px float bug и другие..

Судя по всему, это объясняется следующим:

MS-свойство hasLayout влияет на расширяемость и позиционирование фона (background). Например, по CSS-спецификации background-position: 0 0 должно соответствовать «углу отступа» (padding edge) элемента. В IE/Win это соответствует «углу границы» (border edge) при hasLayout = false и «углу отступа» при hasLayout = true:

http://csspractic.wordpress.com/2008/09/09/haslayout/

Опубликовано Апрель 3, 2009 | автор: levik  |  Нет комментариев »

Удвоение отступа (margin) в Internet Explorer 6

Не сразу понял, что происходит когда столкнулся с багом - в Internet explorer 6 отступ визуально казался больше, чем в Mozilla, Opera IE7. При увеличении отступа эта разница становилось более заметной. Хотя, никаких предпосылок к этому, казалось бы, быть не должно - В css всё ровно… Баг наблюдался при указании отступа для “плавающего” элемента (margin-left:10px; float:left) причем, только если отступ и выравнивание в одну сторону.

Как оказалось, это довольно известная проблема с удвоением отступа margin характерна для IE версии 6 и ниже и именно при выравнивании элемента в сторону отступа.. И название у неё имеется  - Doubled Float-Margin Bug.

Конечно, можно отказаться от использования margin для плавающего элемента, но есть другой более действенный способ - прописать display:inline для этого же элемента. Кроме того, можно воспользоваться условными комментариями для Internet Explorer версии 6 и ниже (lt 6) или хаками.

Дополнительную информацию можно посмотреть тут: http://www.positioniseverything.net/explorer/doubled-margin.html

upd Бонус расползание фона (background) в IE  при ненулевом отступе (margin) как раз на расстояние отступа (margin-bottom:10px; background:url() repeat-y;) вылечилось добавлением width:100% для блокового элемента (ie margin background)

Опубликовано Февраль 25, 2008 | автор: levik  |  Нет комментариев »

Прозрачность png в ie 6 и ниже

Internet Explorer до 6 версии включительно “по умолчанию” не отображает прозрачность у PNG-изображений.

Очень подробно все проблемы, связанные с отображением PNG картинок в IE расписаны у Игоря:

  • Суть и решение проблемы прозрачности PNG в IE6
  • Краткая информация о Фильтр AlphaImageLoader
  • проблема “Не работают ссылки на png-фоне”
  • PNG в IE темнее - искажение цветов PNG изображений в Internet explorer

http://www.tigir.com/alpha_png.htm

UPD - неплохая статья про PNG и IE

http://www.xiper.net/html-and-css-tricks/glyuki-brauzerov/ie6/png-transparency-ie6.html

Опубликовано Ноябрь 21, 2007 | автор: levik  |  Нет комментариев »