添加函数到$(jQuery)

时间:2015-10-01 07:44:04

标签: javascript jquery

对于你们中的一些人来说,这可能很简单但是如何添加

$.functionName(args)

我已阅读并尝试使用jQuery.extend$.fn

$.fn.alertSometing = function(param) {
  alert(param);
};

但是当我跑步时

  $('.button').on('click', $.alertSometing('something'));

返回此错误:

  

未捕获的TypeError:$ .alertSometing不是一个函数(匿名   功能)

这是我的代码:http://jsbin.com/kuxomofoka/edit?html,js,console,output

有人可以解释我如何解释或解释我做错了吗?

谢谢!

3 个答案:

答案 0 :(得分:6)

$just a regular object

与所有JS对象一样,除非冻结(不是) - 您只需向其中添加属性:

$.alertSomething = function(message){ alert(message); };

同样对于任何对象:

var obj = {};
obj.alertSomething = function(message){ alert(message); };

一般来说,如果您的代码与jQuery没有任何关系,我强烈建议您不要将它添加到jQuery对象中,而是将其放在您自己的命名空间或模块中。这有助于避免命名冲突。将内容放在$$.fn上对于制作插件非常有用。

答案 1 :(得分:-2)

尝试将匿名函数作为回调传递。然后使用您之前创建的jquery方法。

$('button').on('click', function(event){
    $(this).alertSomething('something');
});

答案 2 :(得分:-2)

首先,jquery函数(如'on','click'..)与javascript函数不同。

所以在你的情况下,应该声明如下:

$( '按钮 ')alertSometing(' 某物');