onClick函数remove:hover伪类

时间:2014-04-09 11:15:32

标签: javascript jquery html css

我偷了一个小jQuery脚本,使同一页面上的导航链接顺利滚动并进行了微小的更改。

到目前为止它工作正常,但是当单击链接时,不会删除悬停事件的CSS并且文本仍带有下划线。现在我认为这与preventDefault函数有关,该函数执行其名称建议并阻止默认行为。

鼠标再次离开链接后如何删除悬停伪类?

$(document).ready(function ()
{
    $('a.smooth').click( function (e)
    {
        e.preventDefault();

        var target = this.hash,
        $target = $(target);

        $('html, body').stop().animate({
            'scrollTop': ($target.offset().top - 100)
        }, 900, 'swing', function ()
        {
            window.location.hash = target;
        });
    });
});

修改
我刚刚发现了问题 - 我将a:active设置为text-decoration: underline。 请参阅我的小提琴以供参考: http://jsfiddle.net/2zcNt/

对不起,这太明显了。我想我需要睡一会儿。

1 个答案:

答案 0 :(得分:3)

我的猜测是:visited伪类的样式有下划线。您可以使用以下命令进行更改:

a:visited{
    text-decoration: none;
}

编辑:

发布JSFiddle后,我可以看到问题实际上是你将h1嵌入到锚点中。您应该将锚标记嵌入标题中。

已编辑JSFiddle。注意CSS和以前一样。