JavaScript中this和$之间的区别以及extend的使用

JavaScript09

JavaScript中this和$之间的区别以及extend的使用,第1张

1、$("this")是使用标签选择器,查找名为this的标签

2、$(this)取出当前对象并转换为jQuery对象

3、$(this)是jquery对象,能调用jquery的方法,例如click(), keyup();而this,则是html元素对象,能调用元素属性,例如this.id,this.value

在javascript中,DOM节点有这两个方法:

getElementsByTagName

getElementsByClassName

如果可以把里面的id='div'改成class='div',那么就可以这样写:

$('tr').each(function(){

    var subs = this.children

    var target = this.getElementsByClassName('div')[0]

    // target is the element you want.

})

不过这里你用不上, 用你的代码举例可以尝试这样用:

$('tr').each(function(){

    var subs = this.children

    var target

    for(var i=0i<subs.lengthi++) {

        if(subs[i].id === 'div') {

            target = subs[i]

            break

        }

    }

    // target is the element you want.

})

$this只是个自定义的变量;

$(this)是将当前don对象转换成jquery对象 ;

一般定义jquery变量习惯$开头,提高可读性而已。

$(this)是把DOM对象封装成jquery对象,其相当于一个集合。

用法如下:

<a href="http://IP/q/1010000000125418" target="_blank" data-id="1010000000125418">jQuery</a>

$('a').click(function(){

this.innerHTM==$(this).html()=='jQuery'//三者是一样的.

this.getAttribute('href')==this.href==$(this).attr('href')//三者是一样的

this.getAttribute('target')==this.target==$(this).attr('target')//三者是一样的

this.getAttribute('data-id')==$(this).attr('data-id')//二者是一样的

})