I've committed an experimental 'Live Preview' feature to CVS HEAD. If enabled, it will load rendered preview text from JavaScript and insert it into the page without having to submit the form and wait for the entire page to re-load.
There are a couple potential advantages to this: first, it doesn't trash the open edit page. The edit box's undo history should remain intact, and if the load fails (eg you hit a rough patch with the servers) your page is still there. (Some browsers treat the 'back' button badly with respect to no-caching modes, and if you go back from an error page to your last edit you lose everything.)
Second, it's less burdensome on the server. By skipping the skin output, server time to handle a preview is cut about in half for shorter pages (70ms to 34ms in my test, Athlon XP 2400+ w/ Turck installed).
It's still incomplete and likely has a bunch of fun problems. For starters, the category and interlanguage links aren't transferred, and error conditions probably aren't all handled right. But, it could be worthwhile to pursue.
I've tested it (lightly) in Safari 1.2.4, Firefox 1.0, and MSIE 6.0 (on XP SP2). On browsers that don't support the XMLHttpRequest interface or have scripting disabled, it should transparently fall back to form submission and full-page loading. Set $wgLivePreview = true; to turn it on.
-- brion vibber (brion @ pobox.com)