所以,这是一个示例 HTML 代码:
<img src="test.png" id="test">
这是一段 Javascript 代码:
element = document.getElementById('test');
alert(element.getAttribute('src')); --> test.png
alert(element.src); --> domain.com/test.png
为什么 getAttribute 不显示域,而 .src 是的,它添加了域?在哪里可以找到访问 DOM 对象中属性的不同方式之间的区别?
最佳答案
getAttribute()
准确返回 HTML 中的内容。它可能是一个相对 URL。
.src
返回完全限定的绝对 URL,即使 HTML 中的内容是相对 URL。
例如:
<img id="myImage" src="foo.jpg">
var img = document.getElementById("myImage");
var src1 = link.getAttribute("src") ; // "foo.jpg"
var src2 = link.src; // "http://mydomain.com/path/foo.jpg"
或者,使用链接标签:
<a id="myLink" href="foo.html">
var link = document.getElementById("myLink");
var src1 = link.getAttribute("href"); // "foo.html"
var src2 = link.href; // "http://mydomain.com/path/foo.html"
链接标签的工作演示:http://jsfiddle.net/jfriend00/EXYjb/
关于javascript - object.src 和 object.getAttribute ('src' 的区别),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19737143/