javascript - 如何禁用在 iframe 元素内拖动?

标签 javascript css iframe drag

我正在尝试禁用在我的 iframe 元素内拖动。

例如我的 iframe 包含一个 map ,我想允许点击 map 中描绘的元素,但同时,我想防止 map 在拖动时移动(因此禁用拖动)。

“可拖动”属性无济于事,因为它会阻止 iframe 本身被拖动。

我还尝试使用 iframe 的 contentDocument 和 contentWindow 属性,但没有成功。

例如以下代码仅适用于具有空 src=""的框架。 一旦我定义了 src,“点击”事件就永远不会被监听。

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");

最佳答案

您是否尝试过取消 native 事件行为?

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

关于javascript - 如何禁用在 iframe 元素内拖动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58675358/

相关文章:

css - 基本 CSS 问题 - 父 DIV 与未知子 DIVS,居中父 DIV

html - Angular 6 iframe 绑定(bind)

javascript - 检测 iframe 中的 DOMContentLoaded

javascript - 在选择器上调用 jQuery 函数

javascript - 转义 HTML 实体并动态呈现 URL

javascript - HTML5 中数据标签的简单解释/示例

java - 如何阻止来自 iFrame 的图像(img 标签)?

javascript - Flask with Jinja2 - 使用 Jinja2 语句将值从 Flask 传递到 Javascript

css - 将 OneDrive 缩略图的比例保持在方框内

html - 对于本身不设置属性的绝对元素,css 属性 top 是如何计算的?