msafi - 6:25 am on Feb 14, 2011 (gmt 0)
I guess in some cases, like in Google's own video plays example in the documentations, Events can make more sense. But even if Events made more sense than pageviews, if you need more data, go for virtual pageviews.
Also, you can know the average time spent on an external site with virtual pageviews. When a user generates a virtual pageview, _trackPageview is called. Analytics doesn't know the user has left your website. So, once the user comes back to your website and generates another _trackPageview, the difference between the first _trackPageview and the second one is the time the user has spent on the external site. This is also how Analytics calculates average time on page for internal pages -- so it's just as accurate.