0 0

this的 问题10

jQuery.fn = jQuery.prototype = {  
    init:function(selector){  
        var elem = document.getElementById(selector);  
        this[0] = elem;  
        this.length = 1;  
        return this;  
    },  
    each:function(method){  
        for(var i=0; i<this.length; i++){  ="" <br="">            method.call(this[i],i);  
        }  
          
    }  
}; 
测试内容
 
<script> 
    $('myid').each(function(i){  
        alert(i+":"+this.id+":"+this.innerHTML);  
    });  
</script>

this[0] = elem;  
this.length = 1;
这个this 是指的jQuery这个对象吗?
return this; 返回的是哪个this[0]还是this.length
下面的this.id是指的DIV这个对象吗?

这2个this 我不太明白 希望可以告诉我下...

$(this).attr()这个this应该是jQuery的自己对象吧

希望能帮我解释下 谢谢啊~~
2008年10月25日 19:15

1个答案 按时间排序 按投票排序

0 0

其实在使用jQuery的这种链式调用的时候,对于函数内处理的this来说有两种情况:

1.this是jQuery实例对象
2.this是jQuery实例对象中的Element对象集合遍历的一个DOM 元素

比如像上面的each,就是很明确的指DIV了,这点你的理解很正确.
return this中的this是jQuery实例.

简单的说,几乎(没有一个个考证)使用jQuery给的函数中如果传入的有函数参数的话,差不多这个函数所属的this访问都是DOM 元素,
而jQuery给出的API调用函数返回的几乎都是jQuery实例
下面有一个jQuery的中文文档不错.
http://jquery-api-zh-cn.googlecode.com/svn/trunk/index.html
看每一个函数解释的返回值就可以确定了

2008年10月27日 10:32

相关推荐

    zuoxiaobai#zuo11.com#非箭头函数作为参数时this问题1

    有三种方法,1.使用bind绑定一个作用域 2.使用闭包 3.使用箭头函数","keywords": "非箭头函数作为参数时this问题",非箭头函数作为参数时

    关于ES6箭头函数中的this问题

    ES6箭头函数中的this问题 ES6中新增了箭头函数这种语法,箭头函数以其简洁性和方便获取this的特性。然而,在箭头函数中this的指向却与一般函数定义的函数不同。箭头函数中的this是在定义函数的时候绑定,而不是在...

    Vue 解决通过this.$refs来获取DOM或者组件报错问题

    1.关于this.$refs的使用场景 如果ref属性加在普通元素上,那么this.$refs.name则指向该DOM元素 ”p”&gt;hello &lt;!– this.$refs.p 指向该DOM元素 –&gt; 如果ref属性加在组件上,那么this.$refs.name指向该组件实例 ...

    this的用法以及改变this指向

    ### this的用法以及改变this指向 #### 为什么学习this? 在JavaScript中,`this`关键字...通过理解这些绑定规则及其如何影响`this`的指向,我们可以更有效地编写JavaScript代码,并减少因`this`指向问题引起的错误。

    C#中this方法的一些问题

    ### C#中的`this`关键字详解 在C#编程语言中,`this`关键字具有非常重要的作用,它用于引用调用成员(如方法、属性等)的当前对象实例。通过理解`this`的关键用途和场景,可以更好地掌握面向对象编程的基本原则,并...

    js学习总结之DOM2兼容处理this问题的解决方法

    针对上一篇提到的DOM2级存在的兼容问题,这里先说一下this的问题。 /* bind:处理DOM2级事件绑定的兼容性问题(绑定方法) @parameter: curEle-&gt;要绑定事件的元素 evenType-&gt;要绑定的事件类型("click",...

    lock(this)的使用说明

    通过使用lock(this)语句,可以保证在同一时刻只有一个线程可以访问某个资源,防止多个线程同时访问同一个资源而导致的数据不一致或其他问题。 lock(this)的使用格式为lock(objectA){codeB},其中objectA是要锁定的...

    浅谈js中的this问题

    JavaScript中,this关键字是极为重要的一个概念,它代表了函数执行时的上下文。在不同的情况下,this的值会有所改变,指向不同的对象。理解this的指向对于编写高质量、可维护的JavaScript代码至关重要。 首先,this...

    js中的this

    理解 `this` 的行为有助于避免常见的陷阱,如闭包中的 `this` 问题,以及在异步操作中可能出现的 `this` 指向问题。 总的来说,`this` 是 JavaScript 中一个关键的特性,它提供了对象间的关联和方法调用的上下文。...

    js原生态函数中使用jQuery中的 $(this)无效的解决方法.docx

    在JavaScript开发中,使用jQuery的$(this)在原生态函数中可能会出现无效的问题,本文将对此进行详细的分析和解决方法的介绍。 一、问题描述 在JavaScript开发中,我们经常使用jQuery来简化我们的代码,但是当我们...

    this指向问题.md

    this指向问题.md

    C#this指针用法

    `this`关键字在C#中是一个非常强大且灵活的功能,它不仅帮助解决局部变量和类成员变量名称冲突的问题,还在构造函数链式调用和索引器定义中发挥着关键作用。理解并熟练掌握`this`关键字的使用,对于编写清晰、高效、...

    this指向问题.xmind

    this指向问题.xmind

    解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)

    主要介绍了解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等),解决方法是使用this.$forceUpdate()强制刷新,文章给大家分享了代码案例,需要的朋友参考下吧

    Edit-This-Cookie-1.5.0 chrome插件

    1. **编辑 cookies**:EditThisCookie 允许用户修改 cookies 的值,这对于测试网站功能或解决登录问题非常有用。你可以直接在插件的界面中输入新的值,然后点击“更新”按钮。 2. **删除 cookies**:如果你想清除...

    PSP使用GPS导航自制软件MapThis v0.5.20

    7. 更新与社区支持:鉴于软件版本为v0.5.20,这意味着它可能还在不断发展中,用户可以通过社区或开发者网站获取更新,解决遇到的问题,或者与其他用户交流使用经验。 8. 兼容性:MapThis应能兼容多种型号的PSP设备...

    1this,tostring类的继承.rar

    (JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这...下面给出一个使用this的综合实例,以便说明问题:

Global site tag (gtag.js) - Google Analytics