首页 > 解决方案 > 如何仅映射图像源属性的一部分

问题描述

$('button').on('click', function(){
var str = $.map($('.bimg'), (e) => $(e).attr('src')).join(',');
console.log(str);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img class='bimg' src='gall/lorem.jpg' alt='img'>
<img class='bimg' src='gall/ipsum.jpg' alt='img'>
<img class='bimg' src='gall/dolor.jpg' alt='img'>
<button>CLICK</button>

结果:

gall/lorem.jpg,gall/ipsum.jpg,gall/dolor.jpg

我需要的:

lorem,ipsum,dolor

标签: javascriptjquery

解决方案


将以下内容添加到您的地图中

.split('/').pop().split('.').shift()

所以我们分开每个/并使用pop()找到最后一个

然后我们将拆分每个.并用于shift()获取第一部分

$('button').on('click', function(){
    var str = $.map($('.bimg'), (e) => $(e).attr('src').split('/').pop().split('.').shift()).join(',');
    console.log(str);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img class='bimg' src='gall/lorem.jpg' alt='img'>
<img class='bimg' src='gall/ipsum.jpg' alt='img'>
<img class='bimg' src='gall/dolor.jpg' alt='img'>
<button>CLICK</button>

lorem.jpg,ipsum.jpg,dolor.jpg


推荐阅读