我试图让一个div滑动到滑动,之前已经制作了这个,然后单击一个标签,然后打开下一个div滑块。每次都很好。现在我有一个带有类slideheader2的按钮,上面有一个带有类slidecontent2的div我要滑开。页面上有多个带有多个按钮的div,它们具有该类。
现在可行:
jQuery(document).ready(function() {
jQuery(".slidecontent2").hide();
jQuery(".slideheader2").click(function()
{
$('div').prev(".slidecontent2").slideToggle(250);
});
});
但是它会在页面上打开所有与该类相关的div,而不仅仅是前一个。我从其他地方复制并修改了这段代码,所以我查找.prev http://api.jquery.com/prev/并修改了这样的代码,但现在它根本不起作用。有点失去了。
jQuery(document).ready(function() {
jQuery(".slidecontent2").hide();
jQuery(".slideheader2").click(function()
{
$('div.slidecontent2').prev().slideToggle(250);
});
});
希望有人可以帮助我。 谢谢。
@tymeJV
很抱歉,该评论无效,感谢您的回答,但该代码仅在slideheader2和slidecontent2之间没有任何内容时才有效。例如,下一段代码不会起作用,因为其间有另外一类的div。我需要在按钮和滑动div之间有其他div。
<script>
jQuery(document).ready(function() {
jQuery(".slidecontent2").hide();
//toggle the componenet with class msg_body
jQuery(".slideheader2").click(function()
{
$(this).prev(".slidecontent2").slideToggle(250);
});
});
</script>
// works
<div class="slidecontent2" style="width: 500px; height:500px; border: 2px dotted black; background-color: red;">
<p>Slide1</p>
</div>
<input type="button" class="slideheader2" name="submitpakbon" id="submitpakbon" value="slide1" style="width: 225px; float: left;"/>
//wont work
<div class="slidecontent2" style="width: 500px; height:500px; border: 2px dotted black; background-color: red;">
<p>Slide2</p>
</div>
<div class="otherdiv"></div>
<input type="button" class="slideheader2" name="submitpakbon" id="submitpakbon" value="slide2" style="width: 225px; float: left;"/>
答案 0 :(得分:1)
使用this
:
jQuery(".slideheader2").click(function()
{
jQuery(this).prev(".slidecontent2").slideToggle(250);
});
答案 1 :(得分:0)
找到另一个解决方案。我用php给出了按钮的名称值一个唯一的数字,给出了slideiv那个数字的id,然后使用这段代码:
jQuery(document).ready(function() {
jQuery(".slidecontent").hide();
//toggle the componenet with class msg_body
jQuery(".slideheader").click(function()
{
var $shipid = $(this).attr("name");
$(".slideid"+$shipid).slideToggle(250);
});
});