JavaScript DOM对象到jQuery对象

use*_*843 42 jquery dom

如何将JavaScript DOM对象转换为jQuery对象?

<tr onclick="changeStatus(this)">

function changeStatus(myObject) {
       XXX.removeClass();
}
Run Code Online (Sandbox Code Playgroud)

我该怎么写代替XXX?我知道我可以使用id和id选择器进行解决方法,但它不是那么优雅.有没有办法将js DOM对象转换为jQuery对象或this在jQuery中使用关键字?

Jas*_*per 69

var $this = $(myObject);
Run Code Online (Sandbox Code Playgroud)

$this是一个jQuery对象.您可以从DOM元素创建jQuery对象.

<tr onclick="changeStatus(this)">

function changeStatus(myObject) {
       $(myObject).removeClass();
}
Run Code Online (Sandbox Code Playgroud)

我也建议您使用jQuery进行事件绑定:

<tr class="change-status">

$('.change-status').on('click', function () {
    $(this).removeClass( ... );
});
Run Code Online (Sandbox Code Playgroud)

这很好,因为现在所有的JS代码都在一个地方,并且可以更容易地更新(在我看来).请注意,<tr>如果要绑定到<tr>DOM中的所有元素,则不需要添加到元素中的类.


ful*_*lor 13

只需将传递DOM对象作为第一个参数包装.

$(myObject).removeClass('foo');
Run Code Online (Sandbox Code Playgroud)