Javascript .slideToggle()被多次触发?

Javascript .slideToggle()被多次触发?,javascript,jquery,tumblr,slidetoggle,Javascript,Jquery,Tumblr,Slidetoggle,我正在尝试创建一个Tumblr主题,当您单击+符号时,链接和帖子信息将滑入其中。(我的测试博客在) 我对JavaScript非常熟悉,但我能够用下面的代码为链接菜单解决这个问题: <span class="btn">+</span> <ul class="lks"> <!-- various links are here --> </ul> <script> $("ul.lks").hide(); $("span.btn"

我正在尝试创建一个Tumblr主题,当您单击+符号时,链接和帖子信息将滑入其中。(我的测试博客在)

我对JavaScript非常熟悉,但我能够用下面的代码为链接菜单解决这个问题:

<span class="btn">+</span>
<ul class="lks">
<!-- various links are here -->
</ul>

<script>
$("ul.lks").hide();
$("span.btn").click(function () {
  $("ul.lks").slideToggle("slow");
});
</script>
+
$(“ul.lks”).hide(); $(“span.btn”)。单击(函数(){ $(“ul.lks”)。滑动切换(“慢速”); });
但我也有一段适用于所有帖子的代码,用于帖子信息。我使用了几乎相同的代码,但是,正如您可能看到的,它在不同的时间滑入滑出

<div class="pstinfo">
    <!-- info is here -->
</div>
<span class="plsign">+</span>

<script>
$("div.pstinfo").hide();
$("span.plsign").click(function () {
  $("div.pstinfo").slideToggle("slow");
});
</script>

+
$(“div.pstinfo”).hide();
$(“span.plsign”)。单击(函数(){
$(“div.pstinfo”)。滑动切换(“慢速”);
});
按钮的顺序和我在JavaScript中命名类的方式似乎没有太大变化……有什么提示吗?

代码块01

<span class="btn">+</span>
<ul class="lks">
<!-- various links are here -->
</ul>

<script>
$("ul.lks").hide();
$("span.btn").click(function () {
  $("ul.lks").stop().slideToggle("slow");
});
</script>
+
$(“ul.lks”).hide(); $(“span.btn”)。单击(函数(){ $(“ul.lks”).stop().slideToggle(“slow”); });
代码块02

<div class="pstinfo">
    <!-- info is here -->
</div>
<span class="plsign">+</span>

<script>
$("div.pstinfo").hide();
$("span.plsign").click(function () {
  $("div.pstinfo").stop().slideToggle("slow");
});
</script>

+
$(“div.pstinfo”).hide();
$(“span.plsign”)。单击(函数(){
$(“div.pstinfo”).stop().slideToggle(“slow”);
});

请尝试此代码并更新结果:)

如果您不想在单击“.plsign”时打开所有“.pstinfo”元素,请尝试以下代码:

HTML:

 <div class='parentContainer'> <!--put your elements in a parent Container -->
        <div class='info'>
            Info 1
        </div>   
        <div class='plsign'>
            + Open
        </div> 
    </div> 
    <div class='parentContainer'>
        <div class='info'>
            Info 2
        </div>   
        <div class='plsign'>
            + Open
        </div> 
    </div> 
    <div class='parentContainer'>
        <div class='info'>
            Info 3
        </div>   
        <div class='plsign'>
            + Open
        </div> 
    </div>

链接到

出于某种原因,它似乎每秒钟都能工作一次…(在同一个预览中)奇怪的帖子显示并隐藏了一小行:不过,Sit似乎是某种Tumblr故障,因为当我自定义它时,它会在预览中工作!所以耶:你添加了一些内容。但不能重现你的问题。可能是您或tumblr代码中的另一个错误?不,这不是Tumbler中的错误!jquery事件调用的问题!在这里,您必须使用类似.parent()的方法。find()!这里找到了一些解决幻灯片切换添加高度可见问题的方法:200px!重要的;转到.pstinfo类!然后它将在单击事件时可见!然后查看上面代码的输出&更新!我尝试添加它,但似乎它对其他每个div都有效,出于某种原因?尝试使用.each and.click。您还有多个具有相同id的div:“outer”。Id必须是唯一的。
$(".plsign").on('click',function () 
 {   
    $(this).parent().find('.info').slideToggle("slow");
 });