如何以我想要的方式在 jQuery 中使用 "attr()"?

How do I use "attr()" in jQuery in the way I want to?

这是我的代码:

let timer = {};
$('#menu_top li').hover(function () {
    let tag = $(this);
    let timerAttr = tag.attr('data-timer');
    let menudowniconrotate = $('#menu_top span').attr('id') ;
    alert(menudowniconrotate) ;

    clearTimeout(timer[timerAttr]);
    timer[timerAttr] =setTimeout(function () {
        $('#'+ menudowniconrotate).css({
            "-webkit-transform": "rotate(180deg)",
            "-moz-transform": "rotate(180deg)",
            "transform": "rotate(180deg)"});
        $(' > ul', tag).fadeIn(200);
        tag.addClass('activemenu') ;
        $(' > .submenu3', tag).fadeIn(200) ;
    }, 300)

我想在我的代码中分别获取每个 span 标签的属性信息。当我将鼠标悬停在包含 span 标签的 li 标签上时,它运行良好。当我尝试从 li 标签获取属性时,无论我将鼠标悬停在任何li 可用标签....

您的 select 或 $('#menu_top span') 正在 selecting #menu_top 父元素下的所有 span 元素。当您尝试 select id 返回数组的属性时,返回的值将始终是数组中第一个元素的 id

要解决您遇到的问题,请使用 $(this).find('span') 到 select 当前悬停的 lispan 元素。