amit
amit

Reputation: 10261

empty div not getting recognised in javascript

i am creating an empty div in the javascript DOM. but when i call some function on it, for example,

    var hover = document.createElement("div");
    hover.className = "hover";
    overlay.appendChild(hover);
    hover.onClick = alert("hi");

the onClick function isn't working. Instead it displays an alert as soon as it reaches the div creation part of the script. What am i doing wrong?

Upvotes: 4

Views: 1056

Answers (3)

Quentin
Quentin

Reputation: 943999

The property name is "onclick" not "onClick". JavaScript is case sensitive.

It also takes a function. The return value of alert(someString) is not a function.

Upvotes: 0

Canavar
Canavar

Reputation: 48088

Try addEventHandler & attachEvent to attach event to an element :

if (hover.addEventListener)
{
    // addEventHandler Sample :
    hover.addEventListener('click',function () {
        alert("hi");
    },false);
}
else if (hover.attachEvent)
{
    // attachEvent sample : 
    hover.attachEvent('onclick',function () {
        alert("hi");
    });
}
else
{
    hover.onclick = function () { alert("hi"); };
}

Upvotes: 4

ylebre
ylebre

Reputation: 3130

You need to put the onclick in a function, something like this:

hover.onclick = function() {
   alert('hi!');
}

Upvotes: 2

Related Questions