从事件中获取jquery对象的简写?

时间:2017-07-16 23:45:14

标签: javascript jquery html click jquery-events

有没有办法从事件中获取jquery对象以减少必须完成的$(e.target)数量?

例如:

$(document).on('click',"div", function(e){
        $(e.target).css('color', 'red');
    }
});

可以写成

$(document).on('click',"div", function(e){
        e.JQUERY_target.css('color', 'red');
    }
});

有没有办法从事件中获取jquery对象而不必转换它?

4 个答案:

答案 0 :(得分:0)

  

有没有办法从事件中获取jquery对象以减少   必须完成的$(e.target)金额?

是。不要使用jQuery来完成任务。根据具体要求,jQuery根本不是必需的

$(document).on("click", "div", function(e){
  e.target.style.color = "red";    
});

答案 1 :(得分:0)

如果要使用jQuery方法,可以使用$(this)。或e.target如果你想使用vanilla JS方法。

在jQuery方法中使用$(this):

$(document).on('click', "div", function(e) {
  $(this).css('color', 'red');
});
div {
  width: 100px;
  height: 100px;
  background-color: gray;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>Click Me</div>

e.target与vanilla JS方法一起使用:

$(document).on('click', "div", function(e) {
  e.target.style.color = 'red';
});
div {
  width: 100px;
  height: 100px;
  background-color: gray;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>Click Me</div>

答案 2 :(得分:0)

你可以利用this的强大力量!

$(document).on('click', 'div', function(){
    $(this).css('color', 'red');
});

其中$(this)是您正在运行代码的当前对象。在这种情况下,您说当每次点击div的{​​{1}}时,您都希望在其上运行给定的代码。因此,这是被点击的div。

答案 3 :(得分:0)

不,事件只给你DOM对象。如果你想使用jQuery,$()他们。