$(document).ready(function() {
function GetDeals() {
alert($(this).attr("id"));
}
$('.filterResult').live("click", function(event) {
GetDeals();
});
});
我需要在函数GetDeals()
中作为参数传递什么才能使用$(this)
进行操作?
提前致谢!
答案 0 :(得分:14)
您可以将该功能用作事件句柄:
$('.filterResult').live("click", GetDeals);
(请注意,您不使用()
来调用该函数,因此函数本身将传递给live()
函数,而不是其结果。
或者您可以使用Function.prototype.apply()
$('.filterResult').live("click", function(event) {
GetDeals.apply(this);
});
答案 1 :(得分:4)
以上解决方案有效,绝对没有问题。不过我认为这里有一个更好的模式:
$('.filterResult').live("click", function(event) {
GetDeals($(this));
});
function GetDeals(linkObj) {
var id = $(linkObj).attr("id");
console.log(id);
}