Patr56,
Дело конечно ваше, но Ваше решение не особо гибкое. нет возможности свободно удалять и добавлять обработчики. Я бы на вашем месте сделал как-то так
<html>
<button onclick="window.onresize()">
test
</button>
<button onclick="window.handlers.remove(alert1)">
remove
</button>
<script>
Handlers=function(){this.handlers=[]}
Handlers.prototype={
remove: function(handler){this.handlers=this.handlers.filter(function(h){return handler!==h})},
add: function(handler){this.handlers.push(handler)},
call: function(){this.handlers.forEach(function(handler){handler()})}
}
handlers=new Handlers
alert1=function(){alert(1)}
alert2=function(){alert(2)}
handlers.add(alert1)
handlers.add(alert2)
onresize=function(){handlers.call()}
</script>
</html>