JavaScriptタイプエラー:不正な呼び出し
Javascript Type Error
この記事は以下から複製されています: http://www.cnblogs.com/meteoric_cry/archive/2011/04/24/2026582.html 著者:meteoric_cryが再現されました、ステートメントを示してください。
今日はとてもシンプルなページを書きました。ページでDOMを取得するために、次の表記法を使用しました。
DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title> new document title>
<meta name='generator' content='editplus' />
<meta name='author' content='' />
<meta name='keywords' content='' />
<meta name='description' content='' />
<meta http-equiv='content-type' content='text/htmlcharset=utf-8' />
head>
<body>
<div id='demo'>demodiv>
<script type='text/ javascript '>
1:
2: var d = document.getElementById
3:
4: var s = d('demo').innerHTML
5:
6: alert(s)
7:
脚本>> body>
html>
昨日は問題ないようで、IE6〜8で実行しても問題ありませんが、他のブラウザでエラーを報告し、次のようなエラーを報告しています。
キャッチされないTypeError:不正な呼び出し エラー :違法な呼び出し
当時はあまり気になりませんでした。その時、私は何が起こっているのかを注意深く理解していませんでした。それからWeiboにメッセージを送ってレコードを作りました。食事を終えて戻ってきたとき、taiboからブロードキャストされた返信があり、その理由が説明されていました。呼び出し/適用コンテキストが違法である場合、この例外がスローされ、IE9もこの仕様を順守します。以下は、このエラーの報告を回避できる例です。私はあまり注意を払わなかったので、彼は参照を送信しました
'.call'または '.bind'を使用せずに関数ポインタを使用してメソッドを呼び出す
それを読んだ後、私は本当にリラックスしました。 IE9および非IE(Chromeなど)ブラウザーでの上記の単語は次のようになります。