我想滑动div,所有这些都将具有相同的id,因为它们将生成内部循环,因此触发器具有相同的id。这就是为什么我想使用一个函数,目前函数只适用于第一个div,我不知道如何修复它。我希望每个按钮都适用于他之上的div。
html部分
<div id='slide'>
hello
</div>
<p id='but'>click</p>
<div id='slide'>
hello
</div>
<p id='but'>click</p>
和js
$(document).ready(function(){
$(this).click(function(){
$("#slide").slideToggle("slow");
});
});
答案 0 :(得分:0)
几个问题:
使用类而不是ID并使用点击元素#but
的ID而不是this
作为点击功能
<div class='slide'>
hello
</div>
<p class='but'>click</p>
<div class='slide'>
hello
</div>
<p class='but'>click</p>
$(document).ready(function(){
$('.but).click(function(){
$(".slide").slideToggle("slow");
});
});
答案 1 :(得分:0)
首先,在一个页面上不要使用id
- 而是使用class
es。如果您想在点击项目之前对元素执行某些操作,可以使用prev()
,类似这样的内容(在您的代码中只需将css('color', 'red')
更改为slideToggle("slow")
,我只是添加了它,例如):
$(document).ready(function() {
$(".but").click(function() {
$(this).prev().css('color', 'red');
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='slide'>
hello
</div>
<p class='but'>click</p>
<div class='slide'>
hello
</div>
<p class='but'>click</p>
&#13;