首页  >  问答  >  正文

jQuery中$this和$(this)的区别是什么?

jQuery中$this和$(this)的区别是什么?

大神,求带!大神,求带!2759 天前1010

全部回复(2)我来回复

  • 数据分析师

    数据分析师2017-10-01 00:37:32

    jQuery中$this和$(this)的区别是什么?-PHP中文网问答-jQuery中$this和$(this)的区别是什么?-PHP中文网问答

    围观一下哦,学习一下。

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-03-02 09:38:20

    // this其实是一个Html 元素。
    // $this 只是个变量名,加$是为说明其是个jquery对象。
    // 而$(this)是个转换,将this表示的dom对象转为jquery对象,这样就可以使用jquery提供的方法操作。
    (function($){
        $.fn.hilight = function(options){
        debug(this);
        var defaults = {
           foreground: 'red',
           background: 'yellow'
        };
        var opts = $.extend({}, $.fn.hilight.defaults, options);
        return this.each(function() {
          // this其实是一个Html 元素。
          // $this 只是个变量名,加$是为说明其是个jquery对象。
          // 而$(this)是个转换,将this表示的dom对象转为jquery对象,这样就可以使用jquery提供的方法操作。
             $this = $(this);
            // build element specific options
            var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
            // update element styles
            $this.css({
                 backgroundColor: o.background,
                 color: o.foreground
             });
              var markup = $this.html();
             // call our format function
              markup = $.fn.hilight.format(markup);
              $this.html(markup);
          });
       };
       // define our format function
       $.fn.hilight.format = function(txt) {
              return '<strong>' + txt + '</strong>';
        };
        // 插件的defaults
        $.fn.hilight.defaults = {
            foreground: 'red',
            background: 'yellow'
        };
        function debug($obj) {
           if (window.console && window.console.log){
               window.console.log('hilight selection count: ' + $obj.size());
           }
        };
    })(jQuery)


    回复
    0
  • 取消回复