日期:2014-05-16 浏览次数:20433 次
<script type="text/javascript" src="jq.js"></script> <script type="text/javascript"> $(document).ready(function () { var xpath = '', o; $('*').click(function (e) { e.stopPropagation(); o = this; xpath = this.tagName; while (o = o.parentNode) { xpath = o.tagName + '/' + xpath; if (o.tagName == 'BODY') break; } alert('/' + xpath); }); }); </script> <table><tr><td><div class="item_title">1<div class="item_content">1的内容</div></div></td></tr></table> <div class="item_title">2<div class="item_content">2的内容</div></div> <div class="item_title">3<div class="item_content">3的内容</div></div>
------解决方案--------------------
大概是这样的吧 你可以试试
jquery有个 .parents()
比如你选了一个div id为test,你想整xpath的话 $("#test").parents();这样获取的是一个数组,
var aa = [];
$('#test').parents().each(function(){
aa.push(this.tagName);
});
获取标签名后 你就可以替换成xpath了 不过需要注意的是 这个不止获取到body 最后一个元素应该是到html,我也不太确定,反正在firefox上是这样的.