jquery 中的 ~= 是什么?

What is ~= in jquery?

我正在使用 jQuery 和 twitter boootstap rails。最近我发现 bootstrap.js.coffee 文件内容如下

jQuery ->
  $("a[rel~=popover], .has-popover").popover()
  $("a[rel~=tooltip], .has-tooltip").tooltip()

我的问题是 ~= 是什么意思?

对不起,如果这是一个愚蠢的问题。

它是一个 css 波浪线属性选择器 - 它匹配 'rel' 属性中任意位置的单词,无论顺序如何。

也许这有帮助: http://meyerweb.com/eric/articles/webrev/200008b.html

每页:http://api.jquery.com/category/selectors/

Attribute Contains Word Selector [name~="value"] Selects elements that have the specified attribute with a value containing a given word, delimited by spaces.

根据这个定义 $('a[rel~=popover]'):

  1. <a rel="onepopoverover" ...> 不匹配
  2. <a rel="one popover over" ...> 将匹配
  3. <a rel="popover" ...> 将匹配
  4. <a rel="one popover" ...> 将匹配