Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > проверка на отображение рисунков


Автор: pythonwin 15.2.2007, 13:51
Всем привет!

пожалуйста, подскажите как через JS или на сервере (при сесии) проверить включены ли у пользователя рисунки?
кроссбраузерно или как в разных популярный браузерах это узнать?

Автор: 12345c 15.2.2007, 15:12
Измерить сначала наличие свойства объекта рисунка

if(объект.width)alert('нет рисунка');
, потом ширину, убедиться, правильная ли она.

Специального свойтва, подобного navigator.javaEnabled, нет.

Автор: Sardar 16.2.2007, 01:33
Совет: не надо извращений, просто дай пользователю ссылку "облегчённая версия", по которой сервер будет отдавать максимально простую страницу и пользователи тебя оценят. Даже в куках запоминать не нужно, что бы казусов не было.

Автор: pythonwin 16.2.2007, 08:06
12345c, спасибо за код! smile

сделаю скорее всего как посоветовал Sardar


Sardar, спасибо за совет!

Автор: dstorm81 16.2.2007, 12:11
забыли упомянуть про кешироване и как с ним броться
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<title>определть включены ли картинки у пользователя</title>
</head>
<!--
задача сделать валидный документ
есть картинка реальныи размером 234х100
для дизайна следует указывать ширину и вытащить картинку за экран через стили влево и вверх (top left), 

!!!!сразу делаем картинку не со статичным урлом, что бы избежать всех проблем с кэшированием

ОПЕРА
указываем размеры в самой картинке width, отключаем картинки, запрашиваем высоту 
выдается высота по "умолчанию", алерт выдает 22, отследили отключение картинок

при режиме кэширования, а урл то у нас не статичный!!!
 выдаст 22  отследили отключение

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

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

!!!!Если у пользователя стоит увеличение текста, может выдавать разные числа от 20-25, у меня было так 

MSIE
картинку автоматически масштабирует со своими внутренними потребностями, 
поэтому при указании ширины 234, без показа картинок он выдаст высоту 267 отследили

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

при показе картинок, все путем выдаст 110


Firefox
если картинка не загружена то 0, иначе размер 110
-->

<body>
<img id="pict" src='1.jpg?adsa34323454' width="234"  style="border:1px black solid" alt="12122" />
<p onclick="if(document.getElementById('pict').height!=110){alert('картинки отключены')}">проверить</p>
</body>
</html>



Автор: pythonwin 16.2.2007, 12:58
dstorm81, спасибо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)