Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.07.2012, 04:52
Аватар для MVS
MVS MVS вне форума
Аспирант
Отправить личное сообщение для MVS Посмотреть профиль Найти все сообщения от MVS
 
Регистрация: 07.07.2012
Сообщений: 46

Помогите с <iframe> блокировкой открытия
Здравствуйте! В ходе создания сайта возникла проблема которую не могу решить, я использую <iframe> и задача такая, чтоб в окне <iframe> пользователь не смог перейти по ссылке вне <iframe>, то есть страница не открывалась в новой вкладке отдельно, и нельзя было скопировать адрес на ресурс находящийся в <iframe>.
Оптимальное решение заблокировать правую кнопку мышки и выделение-копирование текста.
Я использовал скрипт запрета - работает по всей странице кроме окна <iframe> - в окне <iframe> делай что хочешь!
Господа программисты, кто сталкивался с подобной ситуацией, помогите!!
ВОТ ПОЛНЫЙ КОД:

<style>
#mr { width:100%; height:900px;align: right;}
</style>

<div style="position: relative; width: 100%; height: 900px;">
<div style="left:0px; background: #708090; position: absolute; z-index: 2; width: 258px; height: 900px;"></div>
<div style="right:0px; background: #708090; position: absolute; z-index: 3; width: 275px; height: 900px;"></div>
<div style="background: #708090; position: absolute; z-index: 5; width: 100%; height: 159px;"></div>
<div style="background: #708090; position: absolute; z-index: 4; width: 99%; bottom: 0; height: 87px; "></div>
<div style="margin-top: 0px; z-index: 1; position: relative;">

<script type="text/javascript">
document.ondragstart = test;
document.onselectstart = test;
document.oncontextmenu = test;
function test() { return false; }
document.oncontextmenu;
function catchControlKeys(event){
var code=event.keyCode ? event.keyCode : event.which ? event.which : null;
if (event.ctrlKey){
// Ctrl+U
if (code == 117) return false;
if (code == 85) return false;
// Ctrl+C
if (code == 99) return false;
if (code == 67) return false;
// Ctrl+A
if (code == 97) return false;
if (code == 65) return false; }}
</script>

<iframe id="mr" frameborder="no" src="http://www.microtron.zp.ua/goods#i">
Ваш браузер не поддерживает плавающие фреймы!
</iframe>

</div>
</div>

PS: Хостинг от Ucoz. Для наглядности вот адрес сайта: http://citicom.at.ua/

Последний раз редактировалось MVS, 07.07.2012 в 05:10.
Ответить с цитированием
  #2 (permalink)  
Старый 07.07.2012, 09:20
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

у iframe свое windows к которому вы не имеете доступа и не можете ничего заблокировать
Ответить с цитированием
  #3 (permalink)  
Старый 07.07.2012, 11:20
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

MVS,
1. вставьте фрейм полным рамером (он у Вас 666px на 3007px в div с position:relative;
2. Оберните этот div еще одним с размерами нужного вам окна просмотра и overflow-y: auto;
3. Прямо прмо перед фреймом вставьте прозрачную однопиксельную gif-картинку с размерами 100% Х 100% position:absolute;z-index:100;

Последний раз редактировалось Deff, 07.07.2012 в 11:32.
Ответить с цитированием
  #4 (permalink)  
Старый 07.07.2012, 12:19
Аватар для MVS
MVS MVS вне форума
Аспирант
Отправить личное сообщение для MVS Посмотреть профиль Найти все сообщения от MVS
 
Регистрация: 07.07.2012
Сообщений: 46

Да, но:
пользователь должен иметь возможность внутри фрейма просматривать весь товар имеющийся на сайте который внутри фрейма, то есть, левая кнопка должна кликать по товару, а правая нет, ведь все нарушения происходят именно из-за правой (открыть ссылку в новом окне / открыть в новой вкладке / скопировать адрес сайта и т.д)
Как реализовать только левую активную кнопку мышки?
Ответить с цитированием
  #5 (permalink)  
Старый 07.07.2012, 12:23
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

MVS,
Вы сделайте - а проникать по левой - сквозь свою картинку - уже проще

Вообще вру - выделить текст - наверняка не удастся - ищите в инете кроссдоменный аякс для get запросов

Последний раз редактировалось Deff, 07.07.2012 в 12:41.
Ответить с цитированием
  #6 (permalink)  
Старый 07.07.2012, 12:37
Аватар для MVS
MVS MVS вне форума
Аспирант
Отправить личное сообщение для MVS Посмотреть профиль Найти все сообщения от MVS
 
Регистрация: 07.07.2012
Сообщений: 46

Направьте пожалуйста в правильное русло - как проникнуть сквозь картинку? Первое условие с полупрозрачной картинкой выполнил
вот http://citicom.at.ua/
Как быть дальше?
Ответить с цитированием
  #7 (permalink)  
Старый 07.07.2012, 12:42
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от MVS
Как реализовать только левую активную кнопку мышки?
Никак - посколь Окно другое - не с Вашего домена
Ответить с цитированием
  #8 (permalink)  
Старый 07.07.2012, 12:43
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от MVS
Первое условие с полупрозрачной картинкой выполнил
Гы - криво сделали - ну да фиг сым - потестировал - если клик еще можем передать - то выделение текста сквозь - не удается
Сообщение от Deff
ищите в инете кроссдоменный аякс(jQuery) для get запросов
И вставляйте им полный контент фрейма

Или проксируйте на сервере (серверным запросом на свою страницу, а эту страницу вставляете уже к себе

Последний раз редактировалось Deff, 07.07.2012 в 12:46.
Ответить с цитированием
  #9 (permalink)  
Старый 07.07.2012, 12:46
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от Deff Посмотреть сообщение
Никак - посколь Окно другое - не с Вашего домена
А с нравственной точки зрения хорошо ли пытаться помочь людям воровать чужой контент-выход один договариваться с владельцами домена
Ответить с цитированием
  #10 (permalink)  
Старый 07.07.2012, 13:19
Аватар для MVS
MVS MVS вне форума
Аспирант
Отправить личное сообщение для MVS Посмотреть профиль Найти все сообщения от MVS
 
Регистрация: 07.07.2012
Сообщений: 46

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

Нашел похожую тему Перенаправление с отдельно открытого iframe, блокировка открытия в новой вкладке. реализация мне не понятна, опишите пожалуйста более подробно.
У кого есть еще какие нибудь мысли?
Жду вашей помощи!

Последний раз редактировалось MVS, 07.07.2012 в 15:33.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите получить значение из iframe shtopor Javascript под браузер 9 08.11.2011 01:05
Помогите добраться к содержимому iframe Sergey_New Firefox/Mozilla 1 10.10.2011 22:07
Вложенные IFrame и History goldserg Элементы интерфейса 1 28.03.2011 15:57
Помогите с iframe lvov10 Общие вопросы Javascript 9 27.12.2010 22:10
dragSelector для iframe помогите написать Golizart ExtJS 0 25.07.2010 15:35