使用jquery单击skip-link时阻止重定向到主页面

时间:2016-11-28 16:05:47

标签: javascript jquery html asp.net-mvc

我面临的问题是,由于我的html布局中的标签,我在点击&#34时被重定向到主着陆页;跳到主要内容"链接。

我使用以下JQuery来防止此行为,但它也阻止了对主要内容的指示。

$(document).ready(function () {
    $('#skip-link').click(function () {
        $("#" + $(this).attr("href").slice(1) + "").focus()
        alert("link Skipped")
        event.preventDefault() 
    });
});

我的问题是,如何在不使用“防止默认值”的情况下阻止重定向到相对地址。

1 个答案:

答案 0 :(得分:1)

也许是这样的:

$(document).ready(function () {
    $('#skip-link').click(function (e) {
        e.stopPropagation();
        $("#" + $(this).attr("href").slice(1) + "").focus();
        alert("link Skipped");
    });
});

更新:

好的,如果我理解正确,这就是你想要的,简单地说:

<a href="#skip-link">Jump to main</a>
<a name="skip-link"></a><div class="row" id="anchor">blabla</div>

或jQuery:

<a id="skip-link" href="#anchor">Jump to main</a>
<div class="row" id="anchor">blabla</div>

$(document).ready(function () {
    $('#skip-link').click(function (e) {
        e.stopPropagation();
        var hash = $(this).attr("href").slice(1);
        alert(hash);
        $("#" + hash).focus();
        $("#" + hash).css('background-color', 'red');
    });
});

https://jsfiddle.net/75k7u4w3/