Bug 13393: .focus() results in "Unspecified Error" in IE9

I couldn't find a better way to avoid IE9 crashing when evaluating document.activeElement. This patch sets documet.body as the activeElement in case elem.focus() is called before document.readyState !== "complete" and then redefines jQuery.event.special.focus.trigger to avoid re-running the extra check and body.focus() statements.

A test case has been added.

```javascript
focus: {
			// Fire native event if possible so blur/focus sequence is correct
			trigger: function() {
				var focusTrigger = function() {
					if ( this !== document.activeElement && this.focus ) {
						this.focus();
						return false;
					}
				};

				if ( document.readyState !== "complete" ) {
					document.body.focus();
				}

				jQuery.event.special.focus.trigger = focusTrigger;

				return focusTrigger.call( this );
			},
			delegateType: "focusin"
		}
```
The bug url: http://bugs.jquery.com/ticket/13393