2011-10-03 67 views
1

HTML网页以div格式呈现。我如何允许用户点击并选择任何HTML标签?类似于Firebug和Chrome如何做。我需要按原样返回所选标记。可视地选择HTML元素

+1

不要删除它上面给它的z-index。相反,接受一个答案,并让其他人可以有同样的问题。 –

+0

在问一个问题之前请三思,如果你以后不想让它感到尴尬。我个人并不担心。 [We](http://stackoverflow.com/q/12268/)[all](http://stackoverflow.com/q/150845/)[have](http://stackoverflow.com/q/244285/ )[尴尬](http://stackoverflow.com/q/379343/)[问题](http://stackoverflow.com/q/1060240/)(我可以继续...)。 – Will

回答

4

div添加事件侦听和检查事件的target财产(srcElement用于IE)。

document.getElementById("page").onclick = function(e) { 
    var target = e.target || e.srcElement; 
    alert(e.target.tagName); 
}; 

http://jsfiddle.net/Xeon06/e67qW/1/

2

在jQuery中:

$.click(function(){ 
    var clicked = $(this); 
}); 
+0

我最初的想法是允许拖动一个矩形来选择一组元素,但我想我会有问题确定用户真正想要在层次元素中选择哪个孩子。所以我没有真正想到这个问题。 – HyderA

+0

也可以使用'$ .mouseover'应用CSS边框来提供视觉反馈a'la Firebug –

1

您可以将onclick属性添加到返回本身每个HTML元素。

Chrome和Firefox也有一个悬停的概述元素艰难。为了以一种简单(和丑陋)的方式做到这一点,你可以为html元素添加一个hover css伪类,它为html元素添加1px的边框。

*:hover{ 
    border: 1px solid; 
} 

一个更好的办法是创建与相同尺寸和位置JavaScript的一个新的元素,所以它浮在现有元素