找到用户在iframe中单击的元素

时间:2013-01-09 17:00:18

标签: javascript iframe editor wysiwyg

我正在使用iframe处理HTML编辑器,我希望用户能够在添加后调整图像大小。所以当用户点击iframe内的图像时,会有一个监听器在运行。但它给我的全部是身体标签,而不是点击的元素。我尝试了很多方法,但似乎都没有。

我对此区域的代码是:

//网站显示是iframe

// iframeBody是bodyinside iframe

的主题
siteDisplay.document.getElementById('iframeBody').addEventListener("click", testForClicks, false); 


function testForClicks(){

 console.log(siteDisplay.document.activeElement);

 console.log(this);

 //both give me bodytag

}

我需要点击元素或突出显示元素

任何帮助都会很棒, 感谢

2 个答案:

答案 0 :(得分:0)

如果您需要突出显示的(或活动)元素,您可以使用Selection / Range(链接)API

var selection = window.getSelection();
var range = selection.getRangeAt(0);
var firstNode = range.startContainer;
// etc.

答案 1 :(得分:0)

iframe就像在窗口内打开的单独窗口一样。所以,

iframe = document.getElementById('YourIframeId');
iframe.contentDocument.getElementById('innerIframeElementId').addEventListen......

这会奏效。 此外,如果您想访问iframe窗口,请转到:

iframe.contentWindow.

希望这有帮助。