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

请问this的用法问题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

    <head>

        <title>使用fadeTo()方法设置淡入淡出效果的不透明度</title>

        <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script>

        <link href="style.css" rel="stylesheet" type="text/css" />

    </head>

    

    <body>

        <h3>使用fadeTo()方法设置淡入淡出效果的不透明度</h3>

        <span class="red"></span><span class="orange"></span><span class="blue"></span>

        

        <script type="text/javascript">

            $(function () {

               var $this= $(this);

                $("span").each(function (index) {

                    switch (index) {

                        case 0:

                            $this.fadeTo(3000,0.1);

                            break;

                        case 1:

                           $this.fadeTo(3000,0.5);

                            break;

                        case 2:

                           $this.fadeTo(3000,0.8);

                            break;

                    }

                });

            });

        </script>

    </body>

</html>


为什么不能用 var $this = $(this),而是要用 $this=$(this)才有效果;

 <body>

        <h3>使用slideToggle()方法切换滑动效果</h3>

        <div>

            <h4>

               <span class="fl">我喜欢吃的水果</span>

               <span class="fr" id="spnTip">向下滑</span></h4>

            <ul>

                <li>苹果</li>

                <li>甘桔</li>

                <li>梨</li>

            </ul>

            <input id="hidval" type="hidden" value="0"/>

        </div>

        

        <script type="text/javascript">

            $(function () {

                var $spn = $("#spnTip");

                $("h4").bind("click", function () {

                     $("ul").slideToggle(3000,function(){

               $spn.html() == "向下滑" ? $spn.html("向上滑") : $spn.html("向下滑");

                    })

                })

            });

        </script>

为什么这一段却可以这样定义,而且可以有效果     var $spn = $("#spnTip");

正在回答

2 回答

http://www.jb51.net/article/42257.htm,之前有认为这个问题,然后下面一哥们给了这个链接,讲this的,你可以看看

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

你的问题表达的有点迷啊。this表示当前函数 ,当switch的时候 每个case表示this当前索引的span元素(0.1.2)。$符号只是用来区别原生态js变量和jquery变量(加$)两者都符合js命名规范。

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

举报

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

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

进入课程

请问this的用法问题

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