我尝试编写我的第一个jquery插件。
JS代码
$('#test').existInTip();
(function($){
$.fn.existInTip = function(){
console.log($(this).attr('id'));
}
})(jQuery);
但我得到一个未定义的错误?怎么了?
提前致谢!
彼得
答案 0 :(得分:2)
在宣布插件之前,您尝试使用existInTip
。切换顺序:
(function($){
$.fn.existInTip = function(){
console.log($(this).attr('id'));
}
})(jQuery);
$('#test').existInTip();
如果此代码位于页面的<head>
部分,您还希望将最后一行放在document ready
处理程序中:
$(document).ready(function () {
$('#test').existInTip();
});
还有一件事:在jQuery插件中,this
已经是jQuery对象,所以不需要包装它:
$.fn.existInTip = function(){
console.log(this.attr('id')); // Or this[0].id
}
答案 1 :(得分:0)
在使用脚本之前,应确保声明和解析脚本。尝试交换两个代码块。
答案 2 :(得分:0)
$(this)
可以与实例对象一起使用。
$.fn.existInTip
是一个功能。