【问题标题】:toggle() accordion script not working切换()手风琴脚本不起作用
【发布时间】:2013-08-23 23:26:42
【问题描述】:

我遇到了一个障碍,我似乎无法理解为什么这个脚本不会在我的测试页面上运行。我有 jquery 链接,然后是这个脚本。这是我唯一的脚本,所以我知道它不是 js 冲突。在这里摆弄:http://jsfiddle.net/dXWAY/7

var content = $('.content').hide();

$('.toggleBtn').on('click', function() {
    $(this).next('.content').slideToggle();
    return false;
});

.toggleBtn {
    background:deepskyblue;
    display:block;
    float:Left;
    width:100%;
    padding:10px;
    border-bottom:1px solid #ccc;
    border-top:1px solid #fff;
    color:#fff;
    cursor:pointer;
}

.content {
    background:skyblue; 
    float:left;
    overflow:hidden;
    width:100%;
    padding:10px;
}

 <a class="toggleBtn">Click Me!</a>

<div class="content">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore accusamus porro modi ut itaque ipsum natus explicabo vero sequi beatae libero voluptatibus sit culpa debitis tempore! Sint eum ipsum consequatur!</div>

【问题讨论】:

  • 它不会在现场工作,它只能在 jsfiddle 上工作
  • 然后将您的实时代码上传到某处

标签: javascript css toggle hide


【解决方案1】:

您的问题(在现场示例中)是您在加载 DOM 之前运行您编写的 JS 脚本(在 HEAD 部分中)。

一个简单的解决方法是使该脚本仅在文档准备好后运行。您只需将其输入到document.ready()

即可实现此目的
<script>
$(document).ready(function () {
    var content = $('.content').hide();

    $('.toggleBtn').on('click', function() {
        $(this).next('.content').slideToggle();
        return false;
    });
 });
</script>

【讨论】:

  • 加上将脚本切换到底部的添加使它工作。谢谢。
  • @Blake 使用document.ready() 时不必将脚本放在底部 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-09
  • 1970-01-01
相关资源
最近更新 更多