![](/img/trans.png)
[英]Why am I getting an error when trying to add the src attribute to an img tag using JavaScript within Colfusion?
[英]Why am I getting the browser URL when I try to get the img src?
我正在检查图像是否有URL源。
// HTML (short version)
<div id="image-drop-box">
<img class="promo-img hidden" title="Promo image" src="">
</div>
//JS
var promoImg = $('#image-drop-box .promo-img');
var missingImg = promoImg.prop('src').length == 0 ? true : false;
console.log(promoImg.prop('src').length);
console.log(promoImg.prop('src'));
所有img源都是空的,它一直返回浏览器URL。 这是为什么?
在这里查看jsFiddle 。
您正在查看src
属性 ,该属性相对于文档已解析; 空白的相对URL会解析为与其所在文档相同的URL。如果您想知道属性是否为空白,请使用attr
查看attr
:
var missingImg = !promoImg.attr('src'); // A blank string is falsey, so !"" is true
console.log("attr: " + promoImg.attr('src'));
相对URL ""
解析为“与它相对于的URL相同”,即当前文档。
<div id="image-drop-box">
<img class="promo-img hidden" title="Promo image" src="">
</div>
// JS
var promoImg = $('#image-drop-box .promo-img');
var missingImg = promoImg.attr('src').length == 0 ? true : false;
console.log(promoImg.attr('src').length);
console.log(promoImg.attr('src'));
通过使用.prop('src')
它返回值,但具有完整的域路径
因此,使用此代码可以正常工作
var promoImg = $('#image-drop-box .promo-img');
var missingImg = promoImg.attr('src') ? true : false;
console.log(missingImg);
它会工作
这是因为您获得了相对网址。 如果您具有<img src="images/a.png">
,则意味着您的文件所在的目录下有images dir。 现在,您将其指定为空字符串,这意味着您的图像位于当前文档的旁边。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.