2

我知道这是一个初学者的事情。所以我在一个带有 id thumb 的 div 中有这个图像。

<img id="thumb" src="https://url-to-a-image">

这个 Javascript 是一个放大脚本:

<script type="text/javascript">
    var myImgSrc = document.getElementById("thumb").getElementsByTagName("img") 
[0].src;
    var evt = new Event(),
    m = new Magnifier(evt);
    m.attach({
        thumb: '#thumb',
        large: 'myImgSrc',
        largeWrapper: 'preview'
    });
</script>

如您所见,我正在尝试使用 myImgSrc 获取图像,然后尝试在大型中使用:'myImgSrc'。当我将一个固定的 url 放大:fixed-url-to-the-image 时,它​​工作正常。

4

4 回答 4

5

#thumb有id的元素就是img它自己的标签,当前的选择器不会返回src值,所以应该很简单:

var myImgSrc = document.getElementById("thumb").src;
于 2018-08-07T15:45:18.207 回答
1

你可以得到src这样的图像,

var thumb = document.getElementById("thumb").src;

你不需要使用getElementsByTagName.

于 2018-08-07T15:45:51.527 回答
1
let img = document.querySelector('#thumb');
console.log(img.src);

如果您使用 img.src,您将看到 img 标签的来源。

于 2018-08-07T15:45:54.397 回答
1

getElementsByTagName是多余的 - 你已经有了你想要的确切元素 - 你通过它的 ID 选择了它。仅getElementsByTagName当您想通过标签获取一个或多个元素并对其进行处理时才需要,而不是精确地识别一个。

所以其实解决方法很简单——直接获取srcid-selected元素的属性即可。工作演示:

var myImgSrc = document.getElementById("thumb").src;
console.log(myImgSrc);
<img id="thumb" src="https://url-to-a-image">

于 2018-08-07T15:47:37.930 回答