可以在jQuery中的$ sign之后以编程方式插入任何内容吗?

时间:2015-04-16 10:28:05

标签: jquery

只是看一些插件,我注意到它在插件中有以下语法。

$.informationTech = {
    validateFormat: function (address) {
      return !!address.match(/^[a-zA-Z0-9]{1,4}\s?\$/);
    }
}

然后他们称这个函数为$.informationTech.validateFormat()

我只是想知道$.informationTech在jQuery中究竟意味着什么,或者它是什么样的快捷方式?

3 个答案:

答案 0 :(得分:4)

$jQuery是JavaScript中的一个对象,由jQuery创建,作为其库的主要基础。 jQuery的任何功能都在这个变量中。

例如,以下面的代码为例:

$(".flashy").fadeIn(); // fades in all elements with a class of flashy 

fadeIn将是$变量中的函数。用这些术语来思考:

var $ = {
  fadeIn: function () {
    // do something
  }
}

在您的情况下使用:

$.informationTech = {
  validateFormat: function (address) {
    return !!address.match(/^[a-zA-Z0-9]{1,4}\s?\$/);
  }
}

这只是"捎带"在$变量(仅应用于jQuery)上添加一个名为informationTech的属性,其中包含一个名为validateFormat的函数。 (捎带不是一个真正的术语,AFAIK,但我喜欢这个词,因为它有道理:D)

另一个例子,如果你要写一个jQuery插件:

$.fn.pluginName = function () {
  // do stuff
}

注意你如何写$.fn.pluginName。你可以这样运行:

$(".className").pluginName();

这是因为$.fn是一个内置的jQuery属性,你放在里面的任何函数都是在元素选择器之后直接链接的。

答案 1 :(得分:0)

$ .informationTech与JQuery无关,它只使用主要由JQuery使用的“$”变量。

答案 2 :(得分:0)

使用" $"前缀变量通常指的是专门返回jQuery对象的变量。情况并非如此,但很多开发人员通常会这样做。因此,它与任何其他变速减速没有什么不同。