如何获取链接转到另一页面上的特定div

时间:2016-05-12 20:14:38

标签: javascript jquery html hyperlink anchor

说我有一个链接说:

<a href="services">Services</a>

当我点击该链接时,我显然想要进入服务页面,但我想知道的是如何获取该链接将我带到该页面上的特定部分。

问题是,我想要显示特定部分的页面,除非我点击标签,否则它不显示。这是我的服务页面的样子。您将看到是否单击了特定部分将显示的选项卡。

https://jsfiddle.net/esayoaqg/1/

如果我点击了引用服务1的链接,我希望该链接转到服务页面并显示div #service1

我该怎么做?

<a href="serviceCheck1#service1">Service 1</a>
<a href="serviceCheck1#service2">Service 2</a>
<a href="serviceCheck1#service3">Service 3</a>

$(function(){

    //get the section name from hash
    var sectionName = window.location.hash.slice(1);

    //then show the section
    $('#service-display-box').show();
    //$('#' + sectionName ).show();
    $('#service' + sectionName).show().siblings().hide();
})

3 个答案:

答案 0 :(得分:3)

您可以使用哈希号<a href="services#service1">Services</a> //services.html <div id="service1">...</div>

$(function(){

    //get the section name from hash
    var sectionName = window.location.hash.slice(1);

    //then show the section
    $('#' + sectionName ).show();
})

更新:

如果你需要在页面加载后自动显示一个部分,你可以这样做:

char c = (char) System.in.read();

答案 1 :(得分:0)

您可以使用

<a href="blah.html#gohere">blah blah</a>

<p id="gohere">show this content</p>

然后根据滚动或窗口位置使用节目内容..

最有可能需要各种各样的javascript来获得你想要的效果。

答案 2 :(得分:0)

您可以使用锚点,但不会将隐藏元素设置为可见。

您需要添加一些javascript来显示它。 基于你的小提琴中的例子,它将如下:

var index = location.hash.indexOf('#service');
if(index > -1) {
    var serviceId = parseInt(location.hash.substring(index));
    if(serviceId) {
        $('#service-display-box').show();
        $('#service' + serviceId).show().siblings().hide();
    }
}