我有一个有三行主要信息的页面,每个页面都有一个“更多信息”按钮,有点像wefollow.com和他们的信息按钮。
当点击“更多信息”链接时,带有"mi“类的<tr>
会滑到主信息上方。
我遇到的问题是在点击“更多信息”链接之前隐藏<tr>
。<tr>
所在的位置只有一个空白处。<tr>
中的信息使用jQuery (下面的脚本)隐藏,然后在单击“更多信息”时显示。
我试着用CSS隐藏"mi“,但是当点击”更多信息“按钮时,什么也没有发生。
任何帮助都是很棒的。谢谢。
脚本
索引
<table>
<tbody>
<tr id="info-1"> </tr>
<tr class="mi">
<td>
<div id="1" class="more-information" />
</td>
</tr>
<tr class="">
<td> </td>
<td> </td>
<td> <a id="1" class="more-info" href="#">More info</a> </td>
</tbody>
</table>
listing.js
$(function(){
$(".more-information").hide();
$(".more-info").click(function () {
var divname= this.id;
$("#"+divname).load("getinfo.php").slideToggle("slow").siblings().hide("slow");
return false;
});
发布于 2009-07-09 00:21:22
第一个问题是你在重复is。它们需要是唯一的。这无疑是在抛弃你的代码。
<table>
<tbody>
<tr id="info-1"> </tr>
<tr class="mi">
<td><div id="more-1" class="more-information">More information</div></td>
</tr>
<tr>
<td></td>
<td></td>
<td><a id="1" class="more-info" href="#">More info</a></td>
</tr>
</tbody>
</table>
与以下内容结合:
$(function() {
$("a.more-info").click(function() {
$("#more-" + this.id).load("getinfo.php").slideToggle("slow").siblings().hide("slow");
});
});
不知道为什么你需要在上面隐藏兄弟姐妹。
另外,我不会在jquery中隐藏“更多信息”的div。只需添加CSS即可:
div.more-information { display: none; }
发布于 2009-07-09 03:11:56
您隐藏了more-information
div,但没有隐藏它的父元素,即具有mi
类的<tr>
。尝试将id
属性放在<tr>
中,而不是放在封闭的div中,并隐藏整行。此外,你必须接受cletus关于不重复id和不必要的兄弟隐藏的建议。
https://stackoverflow.com/questions/1101233
复制相似问题