<body style="margin-left:0; margin-top:0">
    <script>
        function log(message)
        {
            var item = top.document.createElement("li");
            item.appendChild(document.createTextNode(message));
            top.document.getElementById("log").appendChild(item);
        }
        
        function logMouseEvent(evt)
        {
            target = (evt.target) ? evt.target : evt.srcElement;
            log(evt.type + " on " + target.id);
        }
        
        function doOnMouseOver(evt)
        {
            logMouseEvent(evt);
            top.document.getElementById("frame3").style.display = "none";
        }
        
    </script>
    <div style="height: 50; width: 50; background:yellow; top:0;left:0; position:absolute;" id="t3_1" 
        onMouseOver="doOnMouseOver(event);" 
        onMouseOut="logMouseEvent(event)">3</div>
</body>
