1

我正在寻找类似于this.id悬停元素的东西。当我插入this.id部分return...时,返回的 id 是 id container。任何想法如何跳转并转到原始悬停元素的 id?

$("#results p").hover(function() {
     $("#container").prepend(function() {
          return "<div id=\"tooltip\"><div id=\"tooltip-inside\">" + e.target.id + "</div></div>";
     });
}, function() {
     $("#tooltip, #tooltip-inside").remove();   
});
4

3 回答 3

2
$("#results p").hover(function() {
     var hovered = $(this);
     $("#container").prepend('<div id="tooltip"><div id="tooltip-inside">'+hovered.attr('id')+'</div></div>');
}, function() {
     $("#tooltip").remove();   
});

我还改进了代码。

如果你已经在使用 jQuery 为什么不使用.attr()

于 2012-09-03T12:33:02.647 回答
1

您应该在回调中从target对象中读取 id :hover

$("#results p").hover(function(e) {
     var id = e.target.id;
     $("#container").prepend(function() {
          return "<div id=\"tooltip\"><div id=\"tooltip-inside\">" + id  + "</div></div>";
     });
}, function() {
     $("#tooltip, #tooltip-inside").remove();   
});
于 2012-09-03T12:31:32.617 回答
1
$("#results p").hover(function() {
     // get a reference value using jQuery. "this" refers to the element being hovered over
     var myId = $(this).attr('id');
     $("#container").prepend(function() {
          return "<div id=\"tooltip\"><div id=\"tooltip-inside\">" + myId + "</div></div>";
     });
}, function() {
     $("#tooltip, #tooltip-inside").remove();   
});
于 2012-09-03T12:32:50.910 回答