js获取a标签下img的图片路径
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js获取a标签下img的图片路径相关的知识,希望对你有一定的参考价值。
比如:
<a href="#" id="f1">
<img src="imgs/dot.jpg"/>
<a>
JS这样写不对呢,要怎么写
document.getElementById("focusPic").getElementsByTagName("img").src = "imgs/dot1.jpg";
<img id="image01" src="images/default/logo.gif" />
<script type="text/javascript">
var s=document.getElementByIdx_x_x_x("image01").src;
alert(s.substring(s.lastIndexOf("/")+1)); --lastindexof()找到所要找的字符的位置,
--substring()获取指定位置以后(从左向右)的字符值
--这句话得到的值为logo.gif
</script> 参考技术A <a href="#" id="f1">
<img id=“img” src="imgs/dot.jpg"/>
<a>
document.getElementById("img").src = "imgs/dot1.jpg";追问
如果img中不加id的话 可以通过a标签拿到吗?
本回答被提问者采纳Vue项目中img标签src的路径问题
参考技术A一、问题引入
像这种直接写死的没有出现什么问题。
但肯定是要改为父组件传值url过来属性绑定来设置的(毕竟是个组件,写死这组件的复用性就太差了)。此时看了一下运行项目后此图片的路径。
webpack编译后的图片文件夹 img 会直接在根目录,图片的上层目录 sys-head 也被忽略了,图片为了避免重复会默认重名了一个名字(vue-cli3搭建的工程)。
图片url也是相对路径写法:
子组件接收后设置图片url:
感觉没什么问题的运行后,图片没有显示:
二、解决方法
1、通过import的方法将图片源路径引入
这也是我这次重构遇到这个问题用的方法。
通过import的方法将图片源路径引入,这里使用相对路径。(打包编译会形参最终路径)
路径直接为引入的此图片(经测试,也可以是数组)。
然后子组件可直接根据此值设置图片 src 。
运行正常:
2、直接将你的图片源文件放在项目目录的 static 文件夹里
原项目用了这种解决方法。(看到了这张图片被放在了 static 文件夹中)
项目中创建 static 文件夹,把图片放入,即可以根据此路径引入。
原来vue-cli2搭建的项目可以使用这种,现在vue-cli3发现他也会把static做打包转化,这种方法使用不了。
3、使用require引入图片
也可以。但是要注意:require后面只能是字符串而不能是变量,所有动态路径无法实现。
以上是关于js获取a标签下img的图片路径的主要内容,如果未能解决你的问题,请参考以下文章