如何将图像源返回为字符串?

时间:2019-03-13 14:58:32

标签: javascript

我正在尝试将图像源转换为字符串,以便可以在其上运行substring()。我使用以下JavaScript来获取源代码:

function ShowQuizAnswers(quiz) {
    var QuizImage = document.getElementById(quiz);
    var ImageType = QuizImage.attributes.src;
    console.log(ImageType);
}

当然,正如我很快发现的那样,它返回一个对象而不是字符串。我尝试在.toString()变量上运行ImageType,但这没有用。有什么我想念的吗?

2 个答案:

答案 0 :(得分:2)

使用Element#getAttribute或直接从dom对象获取src属性。

function ShowQuizAnswers(quiz) {
    var QuizImage = document.getElementById(quiz);
    var ImageType = QuizImage.src;
    console.log(ImageType);
}

function ShowQuizAnswers(quiz) {
    var QuizImage = document.getElementById(quiz);
    var ImageType = QuizImage.getAttribute('src');
    console.log(ImageType);
}

仅供参考:attributes是类似于结构(NamedNodeMap)的数组。它实际上有助于遍历元素的所有属性,但是您不能直接从该元素访问该属性。

来自MDN文档:

  

Element.attributes 属性返回注册到指定节点的所有属性节点的实时集合。它是NamedNodeMap,而不是数组,因此它没有数组方法,并且Attr节点的索引在浏览器之间可能有所不同。更具体地说,属性是键/值字符串对,代表与该属性有关的任何信息。

答案 1 :(得分:1)

尝试:

const imageURL = document.getElementById(quiz).src