我的对象/函数范围和对某事的一般理解有问题。我在 doc ready 中调用 jQuery 函数,如下所示:
$("#interactiveQA .actionTile").on('click',function(){
$(this).activeTiles("init");
});
然后我在这里创建脚本:
(function($) {
var methods = {
init: function() {
var tileClicked = $(this).attr('id');
}
};
$.fn.activeTiles = function(method) {
// Method calling logic
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || !method) {
return methods.init.apply(this, arguments);
} else {
$.error('Method ' + method + ' does not exist on jQuery.slider');
}
};
})(jQuery);
这是我想要找出的。尽可能从技术上讲,您能否解释一下为什么 var tileClicked = $(this)attr('id') 在其当前位置不起作用?您能否详细解释一下您会采取哪些不同的做法或最佳实践等?