2015-04-15 3 views
0

У меня возникла проблема с положением отслеживания щелчка, когда он находится над iframe, который является междоменным.Захват позиции щелчка в междоменном домене iframe

Мой код прямо сейчас:

<div class="poin"> 
<iframe width="640" height="360" src="http://cross_domain" frameborder="0" allowfullscreen id="video"></iframe> 
</div> 

и JS:

$('.poin').bind("mousemove", function(e) { 
console.log("x:" + e.pageX + ", y:" + e.pageY); 
}); 

Это один код, не показывает ничего при перемещении через окно IFrame, но при переходе на окно показывает все.

И так же я попробовал на MouseDown и MouseUp на IFRAME

onmousedown="$(this).addClass(point)" onmouseup="$(this).removeClass(point)" 
.point{ 
pointer-events:none; 
} 

но указатель событий: нет запрещает щелчок, так что перемещение через IFrame работает, но когда пользователь нажимает ничего не происходит.

Возможно, у вас есть идеи, как это сделать, чтобы отслеживать щелчок мышью по окну iframe?

+0

вы не можете сделать это для междоменных страниц из соображений безопасности! – renakre

ответ

0

У меня такое ощущение, что это будет частью модели безопасности, предназначенной для вас, чтобы возиться с сайтом других народов. Если у вас нет контроля над страницами в другом домене, то ваши параметры javascript обычно равны нулю, я боюсь. (если вы можете управлять другим доменом, у вас есть сценарий на этой странице отчета на родительской странице кадрирования)

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

К сожалению, это то, что вы не должны делать в кросс-домене.

Смежные вопросы