Как отключить перетаскивание внутри элемента iframe? - PullRequest
0 голосов
/ 03 ноября 2019

Я пытаюсь отключить перетаскивание внутри своего элемента iframe.

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

атрибут «перетаскиваемый» не поможет, поскольку он предотвращает перетаскивание самого iframe.

Я также пытался работать с contentDocument и contentWindow. свойства моего iframe, но безуспешно.

например, следующий код работает только с фреймом, имеющим пустой src = "". Как только я определяю src, событие «click» никогда не прослушивается.

HTML:

<iframe id="iFrame" width="800" height="600" src="...an embedded map source..."></iframe>

JS:

var win = iFrame.contentWindow;
var doc = iFrame.contentWindow.document;
win.addEventListener("mousedown", function(){
    console.log("iframe win clicked");
doc.addEventListener("mousedown", function(){
    console.log("iframe content clicked");

1 Ответ

0 голосов
/ 03 ноября 2019

Вы пытались отменить поведение родного события?

var win = iFrame.contentWindow;
var doc = iFrame.contentWindow.document;
doc.addEventListener("drag", function(event){ event.preventDefault(); });
...