Javascript контекстное меню для изображений - PullRequest
0 голосов
/ 04 мая 2010

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

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

Каков наилучший способ сделать это?

Ps Меня не волнует их горячая ссылка или сохранение изображений вообще, все, что я хочусделать, это предоставить пользователю более простой способ поделиться изображениями!

Ответы [ 3 ]

7 голосов
/ 04 мая 2010

Не отправляйте изображение в браузер.

5 голосов
/ 04 мая 2010

Нет. Вы можете запретить обычному пользователю беспокоиться, но дело в том, что URL-адрес отправляется в браузер для загрузки. Так что, по крайней мере, я мог просмотреть источник и выяснить его.

Если вы действительно хотите раздражать пользователя, вы можете прикрепить событие oncontextmenu, которое будет захватывать щелчок правой кнопкой мыши в некоторых браузерах.

редактировать

В ответ на ваш комментарий ..

Поскольку вы используете jQuery, вы можете использовать этот плагин для обнаружения щелчков правой кнопкой мыши. Он был протестирован в большинстве браузеров.

Затем вы можете использовать что-то вроде SimpleModal для отображения модального поля, которое вы хотите показать пользователю ..

$('img').rightClick(function (e) {
    $.modal(...);
});
0 голосов
/ 04 мая 2010

Вы можете визуализировать HTML как встроенные данные MIME во всех основных браузерах, кроме IE:

http://jimbojw.com/wiki/index.php?title=Data_URIs_and_Inline_Images

Еще одно странное, но работоспособное решение - преобразовать изображение в CSS:

http://elliottback.com/wp/convert-image-to-css/

Не является действительно хорошим решением, но оно подчеркивает тот факт, что вы должны быть готовы потерять изображение, просто разместив в Интернете.

Даже если вы используете плагин, люди могут просто сделать снимок экрана.

...