3 回答
TA贡献1828条经验 获得超6个赞
一种解决方案是KQ4在选择器中添加
var element = document.querySelector('.unique_img source[srcset*="KQ4"]');
console.log(element.srcset);
<div class="unique_img" style="margin-left: 0px;">
<picture>
<source srcset="www.url.com/this-is-a-sample-image/KQ4/..., www.url.com/this-is-a-sample-image/KQ4/... 2x" media="min-width: xx")>
<source srcset="www.url.com/this-is-a-sample-image/KQ6/..., www.url.com/this-is-a-sample-image/KQ6/... 2x" media="min-width: yy")>
<source srcset="www.url.com/this-is-a-sample-image/KQ8/..., www.url.com/this-is-a-sample-image/KQ8/... 2x" media="min-width: zz")>
</picture>
</div>
另一种解决方案是选择所有元素,遍历它们并检查字符串值:
var sources = document.querySelectorAll('.unique_img source');
var targetSource = null;
[...sources].forEach(function(source) {
if(source.srcset.indexOf('KQ4') !== -1) {
targetSource = source.srcset;
}
});
console.log(targetSource);
<div class="unique_img" style="margin-left: 0px;">
<picture>
<source srcset="www.url.com/this-is-a-sample-image/KQ4/..., www.url.com/this-is-a-sample-image/KQ4/... 2x" media="min-width: xx")>
<source srcset="www.url.com/this-is-a-sample-image/KQ6/..., www.url.com/this-is-a-sample-image/KQ6/... 2x" media="min-width: yy")>
<source srcset="www.url.com/this-is-a-sample-image/KQ8/..., www.url.com/this-is-a-sample-image/KQ8/... 2x" media="min-width: zz")>
</picture>
</div>
TA贡献1794条经验 获得超8个赞
尝试
document.querySelectorAll('source').forEach(src=> {
if(/KQ4/.test(src.srcset)) {
// 'src' contains selection
}
});
document.querySelectorAll('source').forEach(src=> {
if(/KQ4/.test(src.srcset)) {
console.log( src.media );
// your selected source tag is in 'src'`
}});
<div class="unique_img" style="margin-left: 0px;">
<picture>
<source srcset="www.url.com/this-is-a-sample-image/KQ4/..., www.url.com/this-is-a-sample-image/KQ4/... 2x" media="min-width: xx")>
<source srcset="www.url.com/this-is-a-sample-image/KQ6/..., www.url.com/this-is-a-sample-image/KQ6/... 2x" media="min-width: yy")>
<source srcset="www.url.com/this-is-a-sample-image/KQ8/..., www.url.com/this-is-a-sample-image/KQ8/... 2x" media="min-width: zz")>
</picture>
</div>
TA贡献1725条经验 获得超7个赞
您尝试使用*
并且contains
应该可以工作,您所做的唯一错误是您试图匹配 div 内容而不是 div 内容中的源。
试试下面的代码
$("div.unique_img source[srcset*=KQ4]") // this will return matching image having matching `srcset`
添加回答
举报