html手风琴显示面板标题而不是面板标题

时间:2018-07-14 18:56:03

标签: javascript html

我的网站中有以下结构:

<div class="panel panel-default">
    <div class="panel-heading">
        <h4 class="panel-title">
            <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne"><strong>Title</strong></a>
        </h4>
    </div>
    <div id="collapseOne" class="panel-collapse collapse">
        <div class="panel-body">
            <p> Some collapse info </p>
        </div>
    </div>
</div>

因此,当我按上一页的collpase超链接时,下一页会跳转,面板主体折叠在屏幕顶部。我希望它以屏幕顶部居中的面板标题跳转。我怎样才能做到这一点? JavaScript代码:

$(function(){

// check if there is a hash in the url
if ( window.location.hash != '' )
{
    // remove any accordion panels that are showing (they have a class of 'in')
    $('.collapse').removeClass('in');

    // show the panel based on the hash now:
    $(window.location.hash + '.collapse').addClass('in');
}

});

当我在超链接项目的第一页上单击时,它会跳到第二页并在浏览器的顶部位置显示第一个图像。我想做的是在浏览器的最高位置显示第二张图片。这个想法是我有包含多个项目的列表,当我单击第一页时,我看不到列表的标题,只能看到正文。我需要向上滚动才能看到标题。 Image1 Image2

首页

<article class="style5">
    <span class="image">
        <img src="pictureOFitem" alt="" />
    </span>
    <a href="SecondPage.html#collapseOne">
        <h2>Info</h2>
    </a>
</article>

我的意思是说“浏览器顶部位置” Image3

1 个答案:

答案 0 :(得分:0)

我认为应该尽全力:

第一页:

<article class="style5">
    <span class="image">
        <img src="pictureOFitem" alt="" />
    </span>
    <a href="SecondPage.html#title"><!--Pay attention to the id-->
        <h2>Info</h2>
    </a>
</article>

第二页:

<div id="title">
    <div id="accordion"><!-- You forgot this one in your post -->
        <div class="panel panel-default">
            <div class="panel-heading">
                <h4 class="panel-title">
                    <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-controls="collapseOne"><strong>Title</strong></a>
                </h4>
            </div>
            <div id="collapseOne" class="panel-collapse collapse">
                <div class="panel-body">
                    <p> Some collapse info </p>
                </div>
            </div>
        </div>
    </div>
</div>

编辑:要自动显示折叠部分,您可以在第二页中使用:

<script>
    $(function() {
        $('#title .collapse').addClass('show');
    });
</script>

或具有崩溃效果:

<script>
    $(function() {
        setTimeout(function() {
            $('#title [data-toggle="collapse"]').click();
        },1000);
    });
</script>