如何使用jQuery将“title”属性转换为鼠标悬停事件?

时间:2008-10-03 02:31:51

标签: jquery html

我在“table”“td”元素中有一个“span”元素。 span标签有一个标题。

我希望获得该span标记的标题并将其拉出以使其成为“td”元素的“鼠标悬停”提示。

例如:

我想转此:

<td>
    <a href="#"><span id="test" title="Acres for each province">Acres</span></a>
</td>

进入这个:

<td onmouseover="tip(Acres for each province)">
    <a href="#"><span id="test">Acres</span></a>
</td>

编辑:我认为你不明白。我试图将onmouseover函数放入“td”标记。我并不是想把它放到“span”标签中。

5 个答案:

答案 0 :(得分:5)

根据您的编辑,您可以查看jQuery的DOM遍历方法:http://docs.jquery.com/Traversing

这些方面的东西(没有经过测试,我不认为它在语法上是正确的,只是一般的想法在这里)...

$("td").each(function()
{
    $(this).mouseover(function()
    {
        tip($(this).children("span").attr("title"));
    });
});

答案 1 :(得分:1)

类似的东西:

$("span#test").mouseover( function () {
   tip($(this).attr("title"));
}

答案 2 :(得分:0)

如果你不能在td上放一个类或以某种方式选择它,那么先从选择跨度开始,然后转到span的祖父母并附加到鼠标悬停:

// get each span with id = test
$("span#test").each(function(){
    var $this = $(this);
    // attach to mouseover event of the grandparent (td)
    $this.parent().parent().mouseover( function () {
        tip($this.attr("title"));
    }
);

答案 3 :(得分:0)

好的,我也会尝试一下:P

$("#yourTable").find("td").over(function()
  { generateTip($(this).find("span:first").attr("title") }
  , function() { removeTip() }
)

这是做什么的:

  • 获取id为yourTable
  • 的表格
  • 选择所有td
  • 插入mouseover和mouseout事件
  • mouseover事件:使用该td
  • 中第一个范围的标题值调用generateTip函数
  • mouseout事件:调用removeTip()(optionnal)函数。

答案 4 :(得分:-1)

使用jQuery:

$('#test').attr('title')