Политика браузеров такова, чтобы любому пользователю предоставить
свободный доступ как исходнику 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>.
И помните, что пользователь очень захочет получить картинку,
то он всегда сможет посмотреть исходник странички и вычислить
точный путь картинки. Так что шипко не обольщайтесь, данные
ухищрения расчитаны на неопытных юзеров :)
|