jQuery中$this和$(this)的区别介绍

Posted Blogger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery中$this和$(this)的区别介绍相关的知识,希望对你有一定的参考价值。

// 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)

 

以上是关于jQuery中$this和$(this)的区别介绍的主要内容,如果未能解决你的问题,请参考以下文章

jquery中$(this)和this的区别

jQuery中this与$(this)的区别

JQuery this和$(this)的区别及获取$(this)子元素对象的方法

$(this)与this的区别

jquery插件模式中this和this.each有什么区别?

JQuery中this和event.target的区别