Если учитывать старые версии IE не нужно, то код ниже можео сократить, убрав функцию addEvent(), а вместо нее использовать addEventListener(). И кончено же, на мой личный взгляд, использование on+
some_event - это не есть гуд, а уж тем более, использование обработчиков внутри тегов.
Протестировать можно в песочнице.
var d = document,
fr = d.createElement("iframe");
fr.id = 'my_frame';
fr.src = "http://toster.ru/";
d.body.appendChild(fr);
function addEvent(elem, type, handler){
if(elem.addEventListener){
elem.addEventListener(type, handler, false);
} else {
elem.attachEvent('on'+type, function(){ handler.call( elem ); });
}
return false;
}
function afterLoad(){
console.log('Frame loaded!');
}
addEvent(fr, 'load', afterLoad);