有人会碰巧知道如何直接在网页上的鼠标光标下获取HTML标签吗?我正在研究一种新型的WYSIWYG,并希望实现一些真正的拖放功能(不要在光标处插入,这对于WYSIWYG来说是如此常见);要做到这一点,我需要知道当mousebutton up事件触发时插入菜单项的位置。
我们也欢迎您的想法,据我所知,这可能是一个复杂的问题。
答案 0 :(得分:3)
以下是基于@mightyuhu建议链接的示例:
document.onmouseover = function(e){
targ = getTarget(e);
targ.style.border = '1px solid #F00';
document.getElementById('currentElement').innerHTML = targ.tagName;
};
document.onmouseout = function(e){
getTarget(e).style.border = 'none';
};
function getTarget(e){
if (e.target) return e.target;
else if (e.srcElement) return e.srcElement;
}
答案 1 :(得分:2)
实际上,并不复杂。您必须将事件处理程序绑定到文档本身,然后检查事件被触发的原始目标。请参阅mightyuhu的评论。
最后提出一个建议:使用一个主要的JavaScript框架来减轻编写跨浏览器事件处理代码的痛苦。