Forum Moderators: open
This function associate an event to an object:
// Cross-browser event handlers.
function addEvent(obj, evType, fn) {
if (obj.addEventListener) {
obj.addEventListener(evType, fn, false);
return true;
} else if (obj.attachEvent) {
var r = obj.attachEvent("on" + evType, fn);
return r;
} else {
return false;
}
}
I'm trying to use it in this way:
addEvent(document.getElementById('id_internal_code'), 'click', function() {
alert('foo');
})
id_internal_code's objecy is an HTMLInputElement, so it should support the onclick event. Instead I get an error (object has no properties) that points at the line: if (obj.addEventListener) {
Can you help me to understand what's wrong?
TIA,
paolo
<html><head><title>TEST</title>
<link href=".css" type="text/css" rel="stylesheet" />
<script type="text/javascript">window.onload = function()
{
addEvent(
document.getElementById('test'),
'click',
function(){ alert('foo');}
);
}function addEvent(obj, evType, fn)
{
if (obj.addEventListener) {
obj.addEventListener(evType, fn, false);
return true;
} else if (obj.attachEvent) {
var r = obj.attachEvent("on" + evType, fn);
return r;
} else {
return false;
}
}</script>
</head>
<body>
<input id="test" type="text">
</body>
</html>