I am trying to remotely create an onclick
for each <div>
(to save typing time).
Here is the window.onload()
function:
window.onload = function() { divel = document.getElementsByTagName('div'); for (var el in divel) { divel[el].onmouseover = function() { this.style.textDecoration = "underline"; }; divel[el].onmouseout = function() { this.style.textDecoration = "none"; }; divel[el].onclick = function() { document.getElementById('game').src = "/games/" + this.name; }; } }
The name of every <div>
is "flyingsheep"
– this value was set by <div name="flyingsheep">
.
When I click the <div>
, the iframe "game"
takes me to the webpage "/games/undefined"
.
Advertisement
Answer
This will work. the problem is corrected.
just use : this.attributes["name"].value
window.onload = function() { divel = document.getElementsByTagName('div'); for(var el in divel){ window.alert(divel[el].name); divel[el].onmouseover = function(){ this.style.textDecoration = "underline"; }; divel[el].onmouseout = function(){ this.style.textDecoration = "none"; }; divel[el].onclick = function(){document.getElementById('game').src = this.attributes["name"].value;} } }