Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не показывать атрибуты title/alt
 
 автор: lElectroHardl   (20.03.2011 в 16:25)   письмо автору
 
 

Как сделать, что бы у всех элементов не показывались подсказки?

  Ответить  
 
 автор: cheops   (20.03.2011 в 16:28)   письмо автору
 
   для: lElectroHardl   (20.03.2011 в 16:25)
 

В каком-то конкретном браузере или это нужно вообще на сайте для всех пользователей сделать?

  Ответить  
 
 автор: lElectroHardl   (20.03.2011 в 16:47)   письмо автору
 
   для: cheops   (20.03.2011 в 16:28)
 

2-й вариант.

  Ответить  
 
 автор: cheops   (20.03.2011 в 17:04)   письмо автору
 
   для: lElectroHardl   (20.03.2011 в 16:47)
 

Тогда нужно буферизовать вывод и вырезать из HTML-кода все title-лы и alt-ы перед отправлением страницы клиенту, так как браузеры считают это своей территорией и приказать им действовать иначе тут не получится.

  Ответить  
 
 автор: lElectroHardl   (20.03.2011 в 18:24)   письмо автору
 
   для: cheops   (20.03.2011 в 17:04)
 

Например, скрипт
    window.onload = function()
    {
        var img = document.getElementsByTagName('img');
        for (var j = 0; j < img.length; j++)
        {
            img[j].removeAttribute('title');
            img[j].removeAttribute('alt');
        }
    }
выполняет моим требованием. Но только для ИМЖ. Я же не хочу прописывать сей скрипт к каждому тегу.

  Ответить  
 
 автор: cheops   (20.03.2011 в 18:43)   письмо автору
 
   для: lElectroHardl   (20.03.2011 в 18:24)
 

Хм... можно воспользоваться jQuery, которая использует селекторы CSS3 - она обработает все тэги, содержащие title и alt.

  Ответить  
 
 автор: lElectroHardl   (20.03.2011 в 19:35)   письмо автору
 
   для: cheops   (20.03.2011 в 18:43)
 

Подскажите скрипт.

  Ответить  
 
 автор: cheops   (20.03.2011 в 19:54)   письмо автору
 
   для: lElectroHardl   (20.03.2011 в 19:35)
 

Примерно так
<script>
  $('*[title!=""]').attr('title', '');
  $('*[alt!=""]').attr('alt', '');
</script>

  Ответить  
 
 автор: Киналь   (20.03.2011 в 19:14)   письмо автору
 
   для: cheops   (20.03.2011 в 17:04)
 

Так ведь при отсутствии title'а и alt'а браузер будет выводить дефолтные надписи («Рисунок» или ещё что). Чтобы надписей не было вообще, нужно атрибут оставить, но значение его должно быть пустым.

  Ответить  
 
 автор: cheops   (20.03.2011 в 19:24)   письмо автору
 
   для: Киналь   (20.03.2011 в 19:14)
 

Да это не проблема... тут гораздо важнее как лучше сделать, мне JS-вариант тоже больше нравится в том плане, что он перекладывает расчеты с сервера на клиента.

  Ответить  
 
 автор: блогер   (21.03.2011 в 03:54)   письмо автору
 
   для: cheops   (20.03.2011 в 19:24)
 

А клиент в гробу видел ваши расчёты и отключил или заблокировал javascript. :-)

  Ответить  
 
 автор: AlexSol   (21.03.2011 в 07:21)   письмо автору
 
   для: блогер   (21.03.2011 в 03:54)
 

это клиент из сказки

  Ответить  
 
 автор: cheops   (21.03.2011 в 11:15)   письмо автору
 
   для: блогер   (21.03.2011 в 03:54)
 

>А клиент в гробу видел ваши расчёты и отключил или заблокировал javascript. :-)
Ничего критичного не произойдет - просто будут отображаться подсказки, возможно будут чуть-чуть мешать, но вряд ли зверски.

  Ответить  
 
 автор: блогер   (22.03.2011 в 03:18)   письмо автору
 
   для: cheops   (21.03.2011 в 11:15)
 

Я знаю. Но я о другом - достижение цели вэб-мастером находится в зависимости от условия, влиять на выполнение которого он не имеет возможности.

  Ответить  
 
 автор: cheops   (22.03.2011 в 10:14)   письмо автору
 
   для: блогер   (22.03.2011 в 03:18)
 

Он может оценивать эффект в процентах, более того количество включенных/выключенных JavaScript он может получить для отдельно выделенного сайта при помощи счетчика. Этого достаточно, особенно, если не брать за аксиому, что сайт должен одинаково отображаться и обладать одинаковой функциональностью для всех браузеров и условий.
Пользователь может отключить не только JavaScript, но и изображения (и это, кстати, гораздо более частая операция). Задача веб-мастера не в том, чтобы сайт выглядел одинаково при включенных и выключенных изображениях, а в том, чтобы при отключении изображений текст отставался читаемым. Тут то же самое - функциональность не страдает, пользователь сможет воспользоваться ключевыми возможностями сайта.

  Ответить  
 
 автор: блогер   (23.03.2011 в 06:21)   письмо автору
 
   для: cheops   (22.03.2011 в 10:14)
 

Почитываю другой форум, там есть тема о методах воспрепятствования сбору информации о посетителях. Ну, не хочет юзер, что бы о нём собиралась информация. Среди прочего, были советы отключить яваскрипт. Я тоже отметился в трэде, тоже прошёлся по яваскрипту. Конечно, процент озабоченных не велик, однако, это не отменяет другие стимулы, подталкивающие пользователя к отказу от яваскрипта.

На функционале не сказывается? Ещё как сказывается, посмотри на яндексаватую почту. Там что-то типа "к сожалению наш пальцем деланный функционал доступен только при условии включённого яваскрипта". Кстати, опять о форумах. Был случай, там кнопка "Добавить сообщение" была перекрыта какой-то бузой. В результате я не имел возможности воспользоваться главнейшей особенностью проблемного форума - написать сообщение. Выяснилось, что буза становится закрывабельной, если включен яваскрипт. Включать не стал, но положил на форум во-о-о-о-о-о-о-о-о-о-о-от такой предмет.

  Ответить  
 
 автор: cheops   (23.03.2011 в 13:26)   письмо автору
 
   для: блогер   (23.03.2011 в 06:21)
 

Ну собственно никто не говорит, что JavaScript сверхнадежный инструмент. Ситуация усугубляется тем, что этот язык зависит от версии барузера. Однако, если возвращаться к текущей теме, мне кажется здесь использование JavaScript вполне оправдано, так как не приносит пользователю никаких неудобств.

PS Но вообще управлять можно можно чем, например, можно отключить выполнение HTTP-заголовка Location или еще какого-нибудь HTTP-заголовка, тогда будет невозможно пользоваться вообще никакими серьезными динамическими Web-приложениями - только просматривать статические Web-страницы. Пользователь, отключающий тот или иной инструмент делает это по определенным причинам и ходит на определенные сайты. Если будет отключен Flash, понятно, что на YouTube делать будет нечего. Если отключить JS, то к AJAX-сервисам можно даже не подходить. Если отключить cookie, то сессионные сервисы тоже не будут работать. Чем пользоваться пользователь решает сам, а разработчик решает, какими пользователями он готов пожертвовать, чтобы
1) разработать продукт в конечное время
2) уложиться в смету
3) минимизировать расходы по поддержанию системы при выходе новых версий браузеров
4) добиться максимума посещаемости, при соблюдении вышеназначенных условий
Яндекс не интересуют пользователи с выключеным JS, Яндекс не интересуют пользователи с включенным JS, я думаю специалисты компании давно реализовали своих технические амбиции, их интересуют деньги и доля рынка. Вот их они и добиваются.

  Ответить  
 
 автор: lElectroHardl   (21.03.2011 в 20:52)   письмо автору
 
   для: блогер   (21.03.2011 в 03:54)
 

Не стоит считать людей... умными что ли.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования