使用来自同一网站上其他页面的超链接定位特定标签

时间:2013-06-14 11:50:59

标签: php javascript html5 css3

我有一个页面(documents.php),其中包含四个选项卡,第一个选项卡设置为默认选项卡,并在浏览文档时打开.php

我需要能够直接从我的index.php上的超链接以及网站上所有页面上显示的JavaScript菜单中定位标签2,3和4。

示例:

Documents.php上的标签3包含“存档文件”。

在Index.php上我想放置一个名为“点击此处转到存档文档”的链接,当有人点击它时,它必须将它们带到documents.php,但会自动转到选项卡3,这是“存档文档”和不要进入默认的第一个标签。

这是我用来创建Tabs的编码,并且最多只修改它(而不是通过使用jQuery或其他技术重新发明轮子并重新编写此页面和其他页面上的选项卡):

HTML:

<ul>
    <li class="current"><a href="#tab1">General Documents</a></li>
    <li><a href="#tab2">Circulars</a></li>
    <li><a href="#tab3">Newsletters</a></li>
    <li><a href="#tab4">Archived Documents</a></li>
</ul>

使用Javascript:

<script>
$(document).ready(function(){
 $(".tabs li").click(function() {
  $(this).parent().parent().find(".tab-content").hide();
  var selected_tab = $(this).find("a").attr("href");
  $(selected_tab).fadeIn();
  $(this).parent().find("li").removeClass('current');
  $(this).addClass("current");
   return false;
    });
});</script>

然后在外部样式表中有一些CSS可以格式化Tabs,它们的边框,背景等。

CSS格式:

.tabs ul{
    list-style:none;
    display:block;
    margin:0px;
    padding:0px;
    z-index:99;
    position:relative;
}
.tabs li {
    float:left;
    display:block;
    border-top:#E5E5E5 1px solid;
    border-left:#E5E5E5 1px solid;
    border-right:#E5E5E5 1px solid;
    border-top-left-radius:4px;
    border-top-right-radius:4px;
    position:relative;
    z-index:999;    
    color: #444444;
    padding: 4px 8px 4px 8px;
    margin: 0px 6px 0px 0px;
    background: #e7e7e7 url(/assets/images/common/bg.png) repeat-x;
}

.tabs li:hover {

/*If you want hover effects on tabs put your css here*/

}
.tabs li a {
    display:block;
    color:#323234;
    outline:none;
}

.tabs li.current {
    border-bottom:#DD6E27 2px solid;
    outline:none;
}

.tab-content {
    display:none;
    clear:both;
    min-height: 120px;
    border-top-left-radius:0px;
    border-top-right-radius:4px;
    border-bottom-left-radius:4px;
    border-bottom-right-radius:4px;
    color:#444444;
      background:#fefefe url(/assets/images/common/bg.png) repeat-x;
    border: 1px solid #E5E5E5;
    overflow:hidden;
    padding:15px;
}

.tab-content:first-child {
    display: block;
}

1 个答案:

答案 0 :(得分:0)

将#value url传递给http://example.com#tabs3。然后在文档准备就绪时使用。

$(document).ready(function(){
  var hash = window.location.hash;
  $('#'+ hash).addClass("current");

 $(".tabs li").click(function() {
  $(this).parent().parent().find(".tab-content").hide();
  var selected_tab = $(this).find("a").attr("href");
  $(selected_tab).fadeIn();
  $(this).parent().find("li").removeClass('current');
  $(this).addClass("current");
  return false;
  });

});