为了账号安全,请及时绑定邮箱和手机立即绑定

我的方法没效果

  $(function () {

                $("#btntest").bind("click", function () {

                    $(this).toggle(

                        function(){

                            $(div).hide();

                        }

                        function(){

                            $("div").show();

                        }

                    );

                })

            });

我的代码哪儿有问题吗

正在回答

3 回答

首先,toggle方法就是为元素的click事件绑定函数,看你的代码中的意思是点击btntest的按钮后就给这个按钮的click事件加上了toggle里面的函数,此时btntest按钮的click事件绑定的函数就有多个(toggle中的两个和bind绑定的函数),再次点击按钮,执行的结果可能是bind下的,也就是给按钮加上toggle的函数,也有可能是toggle中的函数。

另外,toggle中绑定的函数间需要用,隔开;

不妨试试以下两种方法:

        $(function () {

                $("#btntest").bind("click", function () {

                    $("div").toggle();

                })

            });


            $(function () {

                    $('#btntest').toggle(

                        function(){

                            $('div').hide();

                        },

                        function(){

                            $('div').show();

                        }

                    )


            });


1 回复 有任何疑惑可以回复我~
#1

qq_素养_03538145 提问者

非常感谢!
2016-07-11 回复 有任何疑惑可以回复我~

toggle本身就是设置奇数,偶数次点击事件效果,所以可以直接用,不用绑定click事件;

$(function(){

$("#btnTest").toggle(function(){

$("div").hide();

},function(){

$("div").show();

});

});

toggle方法jquery1.9版本以后就删除了,如果要用还要用一个jquery migrate的插件。

0 回复 有任何疑惑可以回复我~

不要加).bind("click", function () {

$(div).hide();这个div加“”

两个function之间加,

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

我的方法没效果

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信