jQuery没有正确滑动

时间:2013-08-21 19:12:35

标签: jquery html dom

单击第一个复选框时,jQuery不会滑动。我相信这是正确的语法,但我不确定。我已在多个浏览器中查看过它,甚至将其上传到网站。但一切都无济于事。我的代码出了什么问题?

<!DOCTYPE html>
<html>
   <title>Test</title>
<head><script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>                    </script>
   <script>$(document).ready(function(){
   $('#test1').click(function(){
       if ($(this).attr('checked')) {
       $('#test12').slideUp('fast');
       } else {
       $('#test12').slideDown('fast');
       }
   });
   });
   </script>

   </head>
   <body>
   <h1>form test</h1>
   <span><input id="test1" type="checkbox">Hello<br></span>
   <span><input id="test12" type="checkbox">Yo</span>
   </body>
   </html>

4 个答案:

答案 0 :(得分:0)

您需要使用.prop('checked')代替.attr()

请参阅此处的属性与属性部分:http://api.jquery.com/prop/

答案 1 :(得分:0)

试试这个(v1.6 +)

if ($(this).attr('checked') == "checked") 

(1.6之前)..您的情况 有效

if ($(this).attr('checked'))

答案 2 :(得分:0)

您的if语句不正确。尝试将其更改为此。

if ($(this).is(':checked'))

http://api.jquery.com/is/

答案 3 :(得分:0)

使用.change()

JSFiddle:http://jsfiddle.net/PGPpC/

$('#test1').change(function(){
    $('#test12').slideToggle('fast');
});