我的html内容如下,
<ul>
<li class=folder>Main
<ul>
<li class=folder>1st fldr
<ul>
<li> child1
<li> child2
</ul
</ul>
</ul>
现在我想得到folders
(main,1st fldr)的值,因为我的jquery悬停方法如下,
$('ul li.folder').hover(function () {
alert($(this).text());
});
但我没有得到任何人帮助我的价值。
答案 0 :(得分:3)
您需要从悬停元素中选择文本节点:
$('ul li.folder').hover(function () {
alert($(this).contents().filter(function() {
return this.nodeType === 3; //get text nodes
}).text());
});
<强> Working Demo 强>
答案 1 :(得分:1)
<ul>
<li class=folder><span>Main</span>
<ul>
<li class=folder><span>1st fldr</span>
<ul>
<li> child1</li>
<li> child2</li>
</ul>
</ul>
</ul>
$('ul li.folder span').mouseover(function () {
alert($(this).text());
});
答案 2 :(得分:0)
像这样使用
<ul>
<li class=folder>Main
<ul>
<li class=folder><span>1st fldr</span>
<ul>
<li> child1
<li> child2
</ul
</ul>
</ul>
和
这样的文件夹的访问值$('ul li.folder').hover(function () {
alert($(this).find('span').text());
});
答案 3 :(得分:0)
clone
根元素,然后找到它们的children
和remove
。唯一剩下的就是当前的元素。试试 -
$('ul li.folder').mouseenter(function () {
var text = $(this).clone().children().remove().end().text();
alert(text);
});