0

这有效...

$('.tubepress_thumb img').mouseenter(
function(){
    $(this).css('opacity','.8');
    var a = $(this).attr('alt');
    $(this).parent().append('<div class="tp_title">' + a + '</div>');
});

但是闪烁 b/c 附加的 div 覆盖了图像。

所以我试图定位 img 和附加 div 的包含元素并执行此操作...

$('.tubepress_thumb').mouseenter(
function(){
    $(this).children('img').css('opacity','.8');
    var a = $(this).children('img').attr('alt');
    $(this).append('<div class="tp_title">' + a + '</div>');
});

但我得到的不是替代文本,而是“未定义”。

我已经在几篇文章中检查并确认了 $(this).children('img').attr('alt'); 是正确的,所以我不确定我错过了什么。

4

1 回答 1

0

如果该<img>元素不是该元素的直接子.tubepress_thumb元素,则需要使用$(this).find('img')而不是$(this).children('img')查找它。

于 2013-06-18T13:43:20.950 回答