【发布时间】:2013-09-07 00:39:04
【问题描述】:
我正在创建一个成员的个人资料页面。成员的名字是他们的生物 id 的链接。期望的结果是,当每个人的姓名被点击时,他们的简历详细信息会出现在页面上特定的 css 样式框中。页面加载时框的背景和边框可见,但没有内容。单击另一个名称时,以前的简历将返回隐藏,而当前的简历将更改为显示。对此新手可能没有一个简单的答案。
<script type="text/javascript">
$(document).ready(function() {
$(document).ready(function() {
$("#bioLinks div a").click(function(){
$("#bios .show").removeClass("show").addClass("hide");
var bio = $("#bios ." + $(this).attr("id"));
bio.removeClass("hide");
bio.addClass("show");
})
});
</script>
链接和框的样式部分的 css:
#bios {background:#FFFFCC; border-style:solid; border-color:#ffd119; padding:15px; width:600px;text-align:left;position:absolute; top:200px;left:20px;}
.show {display:block; width:600px;}
.hide {display:none;}
.biopic {float:left; margin-right:15px; width:200px; height:200px; border-style:solid; border-color:#000099;clear:left;}
.biostext {display:inline; margin-left:15px; font-family:Georgia, serif; clear:right;}
#bioLinks {float:left; display:block; font-family:Georgia, serif; margin-left:25px; margin-top:15px;clear:right;}
a {font-family:Georgia,serif; color:#0000ff; text-decoration:none;}
链接本身,虽然实际上会有几十个:
<div id="bioLinks">
<div><a href id="bio1">Joe Bloggs</a></div>
<div><a href id="bio2">Monica Faux</a></div>
<div><a href id="bio3">John Doe</a></div>
</div>
还有个人简介,但出于隐私考虑,照片已被删除:
<div id="bios">
<div class="bio1 hide">
<!--div class="biopic"><img src="http://www. -- snip--.jpg" width="200" height="200" alt="Joe Bloggs"-->
<!--/div-->
<div class="biostext">Joe Bloggs is just like everybody else.
</div>
</div>
<div class="bio2 hide">
<!--div class="biopic"><img src="http://www. -- snip--.jpg" width="200" height="200" alt="Monica Faux"-->
<!--/div-->
<div class="biostext">Monica Faux is a belle with a shady past.</div>
</div>
<div class="bio3 hide">
<!--div class="biopic"><img src="http://www. -- snip--.jpg" width="200" height="200" alt="John Doe"-->
<!--/div-->
<div class="biostext">John Doe is an unknown in the organisation.
</div>
</div>
</div>
当我在 Chrome 和 IE 中测试我的代码时,加载时会显示空框,但单击链接不会产生任何结果。
【问题讨论】:
-
你能创建一个 jsfiddle 吗?另外 - 在您的示例中,所有 HTML 都被注释掉了。是不是搞错了?
-
不确定如何创建 jsfiddle?不是所有的html都被注释掉了,只有img src divs?
-
W3 Schools 验证器试图提供帮助,但我太无知了,不知道这意味着什么:错误第 85 行,第 16 列:“HREF”不是为任何指定的组的成员属性
-
我仍然对为什么相同的代码在这些小提琴中而不是在页面上工作感到困惑。我已经尝试将页面剥离为仅出现在小提琴中的此代码,但它也不会那样工作。在 IE 中,链接甚至不显示为链接,光标停留为 I-bar。
标签: javascript jquery onclick show-hide