0

当用户单击“总统 [+]”时,我希望通过跳转到该页面区域来显示隐藏元素(id="pres")。问题是它不会跳转到那个区域,但它会显示隐藏的元素。这是我的 HTML 代码:

<p><a id="Pres" href="#pres"> <b>President :</b> Name <span>[+]</span> </a></p>

<div id="pres">
<a href="images/pres.jpg" rel="lightbox[group101]" class="membersPhotosVer"><img src="images/pres.jpg"  /></a> <br/>
<p> bla bla bla </p>            
</div>

jQuery代码:

$("#pres").hide();
$("#vp").hide();
$("#sec").hide();
$("#fin").hide();
$("#med").hide();
$("#ev").hide();
var pvsfme = $("#pres,#vp,#sec,#fin,#med,#ev");
var PVSFME = $("#Pres,#Vp,#Sec,#Fin,#Med,#Ev");

PVSFME.click(function(e){
    e.preventDefault();
    var cli = $('#'+this.id.toLowerCase());
    cli.show();
    pvsfme.not(cli).hide();
    $(this).addClass("media-selected");
    PVSFME.not(this).removeClass("media-selected");
    $(this).children("span").text("[-]").show();
    PVSFME.not(this).children("span").text("[+]").show();
});

我想知道锚标签是否因为显示/隐藏而不起作用......或者我错过了一些重要的东西。

4

2 回答 2

2

您必须删除e.preventDefault();,否则锚元素(导航)的默认行为将被取消。

于 2013-08-21T19:52:24.623 回答
0

我相信你只是想插入:

<a name="pres"></a>

在你的#presdiv 的顶部。

于 2013-08-21T19:54:10.250 回答