Jquery 通过这个对象的 属性 函数

Jquery function on object's property via this

我有一个对象:

var obj = { id: $('#f_view') };

我有一个功能:

function switchFrom(trigger) {
          trigger.id.click(function() {
                 this.id.toggleClass('class');
          });
};

当我运行函数:

switchFrom(obj);

我得到:

undefined is not a function (evaluating'this.id.toggleClass('class')')

当我明确引用该元素时,该函数起作用。

$('#f_view').toggleClass('class');

我做错了什么?谢谢你的时间。

您需要通过包装在 $(...) 中来转换为 jQuery 对象,例如

function switchFrom(trigger) {
         trigger.id.click(function() {
                 $(this).toggleClass('class');
          });
}

这是因为本机 javascript 对象无法访问 jQuery 方法