| Langugae | Message |
|---|---|
| 简体中文 | 调用的对象无效 |
| 繁体中文 | 呼叫物件無效 |
| 英文 | Illegal invocation |
早期 IE6,7,8 浏览器中,有时开发者为了减少代码,使用变量指针来缓存方法:
但是在 IE9 及其他浏览器中,这是非法的,会抛出 Illegal invocation 这个异常。
因为调用 getElementById 方法需要是 document 对象,但是 $ 默认是 window。
可以使用 call 显式指定调用对象:
或者使用 bind 隐式将对象和方法关联: