我对jQuery世界相当新,但我开始更好地掌握事物。
我遇到过一些需要帮助的情况,我想知道如何设置一个查看图像文件名的if语句并查看它是否包含数字31
,如果确实删除了附加的类。
提前谢谢你
答案 0 :(得分:8)
试试这个:
$('img[src*="31"]').removeClass("classname");
编辑:实际上它会搜索整个src属性,所以只有当你的网址在其他任何地方都没有“31”时它才是正确的。
答案 1 :(得分:2)
$("img[src*='31']").removeClass("myClass");
答案 2 :(得分:2)
一种很好的方法是使用函数作为.removeClass()
的参数。
$('img').removeClass(function () {
if (this.src.replace(/^.*\//, '').indexOf('31') > -1) {
return 'classname';
}
return false;
});
.replace(/^.*\//, '')
将只返回文件名(example on SO),因此如果其他地方的网址中有31
(例如/pix/31/image.jpg
),则不会删除发生。
如果符合条件,函数应返回要删除的类名,否则返回false(表示不应删除任何内容)。
如果您不想检查整个页面(添加类或指定context),可以用更具体的内容替换img
选择器。
答案 3 :(得分:1)
$('img[src*="31"]').each(function() {
// check if only the filename contains 31
var filename = $(this).attr('src').substr($(this).attr('src').lastIndexOf('/'));
if (filename.indexOf('31') != -1) {
$(this).removeClass(); // will remove all classes the img had
}
});
答案 4 :(得分:0)
var img = $('#img_to_look_at');
if ( img.attr('src').indexOf('31') > -1 ) img.removeClass('....');
答案 5 :(得分:-1)
希望这能解决您的问题。
if(jQuery("img[src*='31']").size()>0){
jQuery("img[src*='31']").removeClass('className')
};