But it's not that simple now, is it? Facebook infests your life whether you want it or not and does not have a 'no thanks' or 'yes please' option that will kill all their cruft on a thousand and one websites. On a typical day of surfing you probably load their widgets 100's if not 1000's of times through all the sites that place the cruft on their pages. Whether or not you hit a page with a facebook widget on it is unknowable before you hit the page and facebook does not have a list of domains/hosts to blacklist either. And blacklisting is already beyond the capabilities of most internet users (which is really a sad thing, but you can bet that only a very tiny portion of the netizens knows where to find their 'hosts' file and how to make it do stuff for them).
And even if you know where you can find the hosts file and know what it's good for, it is tedious to collect all the domains and subdomains and add them to the file. There is no wildcard mechanism like *.facebook.com to block all subdomains.
Another solution is to set up a local proxy and apply filter rules, but this is also complicated.
I would love to agree with everybody who says: You don't like Facebook, then simply don't use it. I don't have an account there, but their clutter is everywhere on the web, "like" buttons and stuff like that. I wish that people who maintain their own website or blog would think more about these things and their consequences, before they add fancy buttons to their page layout from a third party site.