3
w3cschools website has an example of the function getelementbyid(). It turns out that in each browser this example has a different return and I could not find a pq response to it. Does anyone have any idea why this happens? the example is this:
<!DOCTYPE html>
<html>
<body>
<img id="myImg" alt="Flower" src="klematis.jpg" width="150" height="113">
<p>Click the button to display each attribute's name and value of the image above.</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
function myFunction() {
var x = document.getElementById("myImg");
var txt = "";
var i;
for (i = 0; i < x.attributes.length; i++) {
txt = txt + x.attributes[i].name + " = " + x.attributes[i].value + "<br>";
}
document.getElementById("demo").innerHTML = txt;
}
</script>
</body>
</html>
The answers of each browser are these:
- Firefox 30.0:
width = 150
height = 113
src = klematis.jpg
alt = Flower
id = myImg
- Chrome 36.0.1985.125:
id = myImg
alt = Flower
src = klematis.jpg
width = 150
height = 113
- IE 11.0.9600.17207
width = 150
height = 113
id = myImg
alt = Flower
src = klematis.jpg
For example, if I want to have access to the id attribute in ff the index will be 4, in Chrome it will be 0 and in IE it will be 2.
The order is irrelevant in this case don’t you think? since you can access the attributes of the object associatively by name. I believe that the different orders are given by the simple fact of how each browser sorts the attributes in memory.
– Cahe