zoukankan      html  css  js  c++  java
  • 实例讲解JQuery中this和$(this)区别

    这篇文章主要介绍了实例讲解JQuery中this和$(this)的区别,this表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法,$(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值,需要的朋友可以参考下

    平时很少在jquery中用到this。查看代码时发现用到了,就调试出this的值,心想原来如此。还是挺有用的。这里总结一下this与$(this)的区别和使用。

      $(this)生成的是什么?

      $()生成的是什么呢?实际上$()=jquery(),就是说返回的是一个jquery的对象。

      通常我们为了简便直接使用$()。实际上,该函数省略了一个参数context。根据选择器选取匹配的对象即$(selector, context),以jQuery包装集的形式返回。

      context可以是Dom对象集合或jQuery包装集,传入则表示要从context中选择匹配的对象,不传入则表示范围为文档对象(即页面全部对象),即$(selector)=$(selector,document)。

      this指的是,调用函数的那个html对象。

    例子:

    $("#textbox").hover(   
      function() {   
           this.title = "Test";   
      },   
      fucntion() {   
          this.title = "OK”;   
      }   
    );

    这里的this其实是一个Html元素(textbox),this是js中的。textbox有text属性,所以这样写没什么问题。

    $("#textbox").hover(   
           function() {   
       $(this).title = "Test";   
           },   
           function() {   
       $(this).title = "OK";   
           }  
    );

    这里的$(this)是一个JQuery对象,而jQuery对象沒有title 属性,因此这样写是错误的。

    结论:

      this,表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法。
      $(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值。

    实例(选项卡):

    tabs($("#nav a"), $(".content")); 
    function tabs(tab, content){
     content.hide();
     content.eq(0).show();
     tab.click(function(){
      var index = tab.index(this);
      tab.removeClass("current");
      $(this).addClass("current");
      content.hide();
      content.eq(index).animate({opacity:'show'}, 200);
     });
    }

  • 相关阅读:
    Java中的transient关键字
    【笔记】html的改变(上)
    《开发板 — 实现看门狗》
    《头文件导致Symbol xxx multiply defined重复定义问题分析和解决》
    《APP读取按键值》
    《补充 — Linux内核device结构体分析(转)》
    《设备树LED模板驱动程序》
    《C库 — 字符串和整型数相互转换函数atoi和itoa》
    《Ubuntu — rsync命令》
    《Ubuntu — 2>/dev/null和>/dev/null 2>&1和2>&1>/dev/null的区别》
  • 原文地址:https://www.cnblogs.com/sjqq/p/6400451.html
Copyright © 2011-2022 走看看