1

我尝试在我的网站上使用 MagicLine jQuery Navigation,但遇到了一个小问题。我希望下划线与当前突出显示的单词一样长。相反,它长了几个像素,我根本无法处理。我试图用 CSS 修复它,但我失败了。我相信这个问题的解决方案可以在 jQuery 代码中找到,但我不熟悉它,所以我向你寻求帮助。如何缩短jQuery中下划线的长度?

在这里你可以找到 MagicLine jQuery Navigation 和我的问题的图形描述。

4

2 回答 2

0

我做了一些调整以使其适合您的要求

$("#example-one li").find("a").hover(function() {
    $el = $(this);
    var padding = ($el.outerWidth() - $el.width()) / 2;
    console.log($el.outerWidth(),$el.width(), padding)
    leftPos = $el.position().left + padding;
    newWidth = $el.width();

    $magicLine.stop().animate({
        left: leftPos,
        width: newWidth
    });
}, function() {
    $magicLine.stop().animate({
        left: $magicLine.data("origLeft"),
        width: $magicLine.data("origWidth")
    });    
});

还需要改current_page_item

var $currentItem =  $(".current_page_item a");
var padding = ($currentItem.outerWidth() - $currentItem.width()) / 2;

$magicLine
    .width($currentItem.width())
    .css("left", $currentItem.position().left + padding)
    .data("origLeft", $magicLine.position().left )
    .data("origWidth", $magicLine.width());

演示:小提琴

于 2013-02-08T13:03:58.897 回答
0

我找到了解决方案.navigation ul li.active { margin-right: -10px; }

你需要给它这个CSS。

于 2013-02-08T12:37:55.130 回答