如何删除ID并在我的nav ul中添加不同的ID

时间:2014-03-28 14:07:45

标签: jquery

我试图在导航的ul列表中添加不同的ID。

我做错了什么?

您可以在jQuery中添加和删除ID,还是需要使用JavaScript?

 $(window).scroll(function () {
        if ($(document).scrollTop() == 0) {
            $('#logo_top').removeClass('remove-logo');
        } else {
            $('#logo_top').addClass('remove-logo'); 
        }
    });
    $(function(){
        $('#navi').data('size','big');
    });

    $(window).scroll(function(){
        if($(document).scrollTop() > 0)
        {
            if($('#navi').data('size') == 'big')
            {
                $('#navi').data('size','small');
                $('#navi').stop().animate({
                    height:'58px'
                },600);
                $('#navi-top ul').remove();
                $('#navi-top-small ul').add(); 
            }
        }
        else
        {
            if($('#navi').data('size') == 'small')
            {
                $('#navi').data('size','big');
                $('#navi').stop().animate({
                    height:'122px'
                },600);
            }  
        }
    });

这是我的网站的html我试图针对ul提出任何建议吗?

<div id="navi-top" class="push-off-right-s">
    <ul>
        <li><a href="#">The Group</a></li>
        <li><a href="#" class="active">Working Together</a></li>
        <li><a href="#">Paymaster</a></li>
        <li><a href="#">Claybrook</a></li>
        <li><a href="#">Vote for a sidekick</a></li>
    </ul>
</div>

2 个答案:

答案 0 :(得分:0)

ID是您通过将其作为参数传递而设置的属性值:

$('#navi-top ul').attr('id','your value');

答案 1 :(得分:0)

元素id应该用于标识元素。如果要动态更改CSS,则应使用class。见Difference between id and class in CSS and when to use it

所以行

$('#navi-top ul').remove();
$('#navi-top-small ul').add();

应该是

$('#navi-top').addClass('navi-top-small');

CSS:

.navi-top-small ul {
    margin: -32px 0 0 0;
}

然后,根据您的需求,您可能需要在removeClass('navi-top-small')条款中添加else