切换显示和隐藏不工作

问题描述:

我是jquery的新手,我正在尝试从jquery这本常见问题解答练习,但它只显示常见问题答案,当点击时,当我们再次单击时,它被隐藏但隐藏, t切换显示和隐藏不工作

$(document).ready(function() { 
    dynamicFaq(); 
}); 

    function dynamicFaq() { 
     $('dd').hide(); 
     $('dt').bind('click', function(){ 
      $(this).next().show(); 
     }); 
     $('dt').bind('click', function(){ 
      $(this).next().toggle(); 
     }); 
    } 

谢谢大家。 书籍演习是该=“6现在,我们已经从这个问题的答案搬到现在所有剩下要做的就是展现 答案:。

$('dt').bind('click', function(){ 
$(this).next().show(); 
}); 
  1. 不要忘了,直到我们把它叫做我们的dynamicFaq功能不会做任何呼叫 文档准备语句内dynamicFaq功能:

    $(文件)。就绪(函数(){ dynamicFaq(); );

  2. 现在,如果我们在浏览器中加载页面,您可以看到我们的所有答案都隐藏着,直到我们点击这个问题为止,隐藏了 。这很好,很有用,但如果网站访问者在完成读取操作后可以再次隐藏答案,则它会更好,因为 可以让他们避开它。幸运的是,这是一个很常见的任务,jQuery使得我们很容易使用这个工具。我们所要做的就是用.toggle()方法调用 来调用.show()方法,如下所示:

    $('dt')。bind('click',function() {$ (本)。接下来()切换(); 。});”

开始=”>

function dynamicFaq() { 
     $('dd').hide(); 
     $('dt').bind('click', function(){ 
      $(this).next().show();//showing 
     }); 
     $('dt').bind('click', function(){ 
      $(this).next().toggle();//hiding 
     }); 
    } 

所以,永远不会显示

只要做到这样:

function dynamicFaq() { 
     $('dd').hide(); 
     $('dt').bind('click', function(){ 
      $(this).next().toggle();//hide or show 
     }); 
    } 
+0

AHHHHH!它非常简单,谢谢你的回答。 – 2014-11-22 17:12:50

+0

欢迎来到SO。 – 2014-11-22 17:13:43

试试这个代码:

$(document).ready(function() { 
    $('dd').hide(); 
    $('dt').click(function(){ 
     $(this).next().toggle(); 
    }); 
}); 
+0

谢谢你的回复。那也行得通。 – 2014-11-22 17:15:40

您可以将元素绑定只是里面的$(document)。就绪(),无需再次调用一个函数。

试试这个:

$(document).ready(function() { 
    $('dd').hide(); 
    $('dt').click(function() { 
     $('dd').toggle(); 
    }); 
}); 
+0

谢谢你的回复。这也是有效的,它同时显示所有的答案。 – 2014-11-22 17:14:03

+0

哦,我看到了,就是不明白你的$(this).next(),因为没有看到html部分。伟大的,它现在的作品;) – Ranya 2014-11-22 18:34:49