我创建了一个名为draw()
的js函数,现在我可以在使用.
获取元素后使用$(...)
运算符调用此方法。我的意思是我喜欢这个工作$(#myId).draw()
。现在它给出了像未定义函数一样的错误。我怎样才能使它发挥作用?
答案 0 :(得分:3)
很难从你的问题中看出来,但听起来你想创建一个 jQuery插件。您可以通过扩展$.fn
:
$.fn.draw = function(){
/* ... */
}
然后你可以对选择器调用它:
$('#myId').draw();
此处有更多文档:http://learn.jquery.com/plugins/basic-plugin-creation/
答案 1 :(得分:1)
您必须将其创建为jquery插件。如此处所述。
Best Way to Extend a jQuery Plugin
jQuery的文档: http://api.jquery.com/jquery.fn.extend/
JsFiddle示例:http://jsfiddle.net/Wdx75/
var obj1 = { "color" : "yellow" };
var obj2 = { "background" : "blue" };
var o = $.extend({}, obj1, obj2);
$.fn.draw = function(){
$("div").css(o);
}
$('abc').draw();
答案 2 :(得分:1)
您将look at adding jquery plugin
$.fn.draw= function(){
}
答案 3 :(得分:1)
最好的方法是使用jquery.fn.extend添加方法(因为我们可以一次添加几个插件函数)
示例代码如
jQuery.fn.extend({
draw: function() {
return this.each(function() {
// add code here to draw
});
}
});
添加此方法后,您可以使用下面的代码在任何jQuery元素上调用draw方法
$("#myId").draw()
官方参考: jquery.fn.extend
答案 4 :(得分:1)
您想使用jQuery.fn.extend
,此处记录http://api.jquery.com/jquery.fn.extend/。
$.fn.extend({
draw: function() {
// do something to the jQuery object
return this;
}
});
现在,您可以在使用.draw
创建的jQuery对象上调用$(...)
。