Политика браузеров такова, чтобы любому пользователю предоставить свободный доступ как исходнику html страницы так и к картинкам на страницы. Обычно всё это делается через контекстное меню. Значит надо искать способы, чтобы пользователи не могли вызывать это меню.
С выходом в свет появилась возможность управлять меню. Теперь в тэге <IMG> можно использовать событие oncontextmenu которое обрабатывается каждый раз, когда контекстное меню собирается появиться на страничке. Если перехватить это событие и возвращать false, то контекстное меню не будет появляться. Поэтому если использовать
<img src="images/picture.jpg" oncontextmenu="return false">
то пользователь никогда не увидит контекстного меню для данного элемента страницы.
Те, кто не использует Internet Explorer 5.0 могут проделать эту хитрость при помощи Cascading Style Sheets (CSS):
<img src="images/clear.gif" width=200 height=142 style="background:url(images/picture.jpg)">
Здесь использован тэг <IMG> для отображения прозрачной картинки GIF с теми же размерами чтои реальная картинка. А затем, при помощи стиля в качестве фона установлено нужное изображение. Данный приём работает в Internet Explorer 4.0.
Однако, это ухищрение не будет работать в Навигаторе, а нижеприведённое будет:
<div style="background:url(images/picture.jpg) no-repeat; width:200; height:142"> <img src="images/clear.gif" width=200 height=142> </div>
Этот код фактически проделывает тоже самое - поверх реальной картинки помещается прозрачное изображение, а сама картинка делается фоном тэга <DIV>.
И помните, что пользователь очень захочет получить картинку, то он всегда сможет посмотреть исходник странички и вычислить точный путь картинки. Так что шипко не обольщайтесь, данные ухищрения расчитаны на неопытных юзеров
|