-9

如何使用 vanilla javascript 来实现这一点?以下使用 jQuery 语法。

$(function(){
    $("ul.dropdown li").hover(
        function(){
            $(this).addClass("hover"); 
            $('ul:first',this).css('visibility', 'visible');
        },
        function(){
            $(this).removeClass("hover");
            $('ul:first',this).css('visibility', 'hidden');
        }
    );
    $("ul.dropdown li ul li:has(ul)").find("a:first").append(" » "); 
});
4

1 回答 1

0

这样的事情是相似的:

document.body.addEventListener(
    'load',
    function(){
        var elements = document.querySelectorAll("ul.dropdown li");
        for(var i = 0, l = elements.length; i < l; i++){
            var e = elements[i];
            e.addEventListener('mouseover', function(e){
                e.setAttribute('class', e.getAttribute('class') + ' hover');
                document.querySelector("ul.dropdown li").style.visibility = 'visible';
                e.style.visibility = 'visible';
            })
            e.addEventListener('mouseout',  function(e){
                e.setAttribute('class', e.getAttribute('class').replace(' hover',''));
                document.querySelector("ul.dropdown li").style.visibility = 'hidden';
                e.style.visibility = 'hidden';
            })
        }
        document.querySelector("ul.dropdown li ul li:has(ul)").querySelector("a:first").innerHTML += " &raquo; "; 
    }
)

(但不一样)

于 2013-01-24T08:50:52.363 回答