0

我刚刚将我的网站设置为使用 CDN,这一切都按计划进行,并且大部分都按预期工作 - 除了我用于图像的 colorbox 之外。

我感觉它不再起作用了,因为所有图像的末尾都有一个查询字符串(例如image.png?9d7bd4),这破坏了我的 jQuery 选择器:

/* colorbox - use it on all links to images */
$('a[href$=".jpg"],a[href$=".jpeg"],a[href$=".png"],a[href$=".gif"]').colorbox({
    'rel': 'images',
    'photo': true,
    'maxWidth': '90%',
    'maxHeight': '90%'
});

有人可以帮我重写 jQuery 代码以使其工作吗?谢谢你。

4

3 回答 3

2

您使用的是选择器的结尾。您想将其更改为“包含”。

/* colorbox - use it on all links to images */
$('a[href*=".jpg"],a[href*=".jpeg"],a[href*=".png"],a[href*=".gif"]').colorbox({
    'rel': 'images',
    'photo': true,
    'maxWidth': '90%',
    'maxHeight': '90%'
});

有关属性选择器的更多信息:https ://developer.mozilla.org/en-US/docs/CSS/Attribute_selectors

但是,如果可能的话,您可以向图像添加一个类,以便更轻松地选择它们。

于 2012-09-10T16:30:46.277 回答
0

您可以使用contains代替使用 ends-with 选择器:

/* colorbox - use it on all links to images */
$('a[href*=".jpg"],a[href*=".jpeg"],a[href*=".png"],a[href*=".gif"]').colorbox({
    'rel': 'images',
    'photo': true,
    'maxWidth': '90%',
    'maxHeight': '90%'
});
于 2012-09-10T16:28:42.610 回答
0

或者作为包含 Word的替代品,您可以使用包含选择器

/* colorbox - use it on all links to images */
$('a[href*=".jpg"],a[href*=".jpeg"],a[href*=".png"],a[href*=".gif"]').colorbox({
    'rel': 'images',
    'photo': true,
    'maxWidth': '90%',
    'maxHeight': '90%'
});

它对我有用

于 2012-09-10T16:31:58.920 回答