Нахер такие переподвыподверты? Зачем из-под одной ф-ции было вызывать f(), этот пример нихрена не показателен, там Window везде, что ты им сказать-то пытался?
<button onclick='f(event)'>this в атрибуте (кликни)</button>
<button id="button2">this в свойстве (кликни)</button>
<script>
function f(event) {
alert(this);
}
button2.onclick = function(event) {
alert(this); //нахер тут было f вызывать? Я уже понял, что там Window) И ты ещё говоришь, что я хитрая жопа?:D
};
</script>