IE8 プロンプトが無効なプロシージャ呼び出しまたは引数例外 solution_javascript スキル
browser_info:"platform:Win32;msie;version:8.0;ie",
navigator:"appCodeName:Mozilla;appName:Microsoft Internet Explorer;appMinorVersion:Release Candidate 1;cpuClass:x86;プラットフォーム:Win32;systemLanguage:zh-cn;userLanguage:zh-cn;appVersion:4.0 (互換性; MSIE 8.0; Windows NT 5.1; Tridentu002F4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729);userAgent:Mozillau002F4.0 (互換性; MSIE 8.0; Windows NT 5.1; Tridentu002F4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0。 4506.2152; .NET CLR 3.5.30729);onLine:true;cookieEnabled:true"
2. 错误代码:
alert(document.body.querySelectorAll);
var els = document.body.querySelectorAll('div');
alert(els[2]);// 2 > els.length-1
3. 原因分析:
上のコードでは、els は querySelectorAll の結果です。els[2] は、未定義を返すのではなく、頻繁に発生します。
4. QWrap のセレクターで、querySelectorAll の結果が下位の境界を取得する可能性があります。
functionネイティブQuery(refEl, sSelector) {
if (hasNativeQuery && /^((^|,)s*[.w-][.ws-> ~]*) $/.test(sSelector)) {
//如果浏览器自带有querySelectorAll 、そして、今回のクエリは単一のセレクターであり、セレクターを直接調整して
// 一部のデバイスはサポートされていません">~ "最初のシステム計算符
var oldId = refEl.id,
tempId、
arr = []、
els;
if (!oldId && refEl.parentNode) { //標準のquerySelectorAll 内のセレクターは、:scope ではなく、:root に対応しています。
try {
els = refEl.querySelectorAll('#' tempId ' ' sSelector);
} 最後に {
refEl.removeAttribute('id');
}
}
else{
els = refEl.querySelectorAll(sSelector);
}
for (var i = 0, elI; elI = els[i ];) arr.push(elI);
arr を返します;
}
null を返します。
}
5. 反思:
代码A:for (var i = 0, len = els.length; i < len; i ) arr.push(els[i]);
代金B:for (var i = 0, elI; elI = els[i ];) arr.push(elI);
は、「代コード A」の代わりに「代コード B」を使用します。これは、このマシンに組み込まれ、変更が実行される可能性があります。 修正:
老老実装の変更コード A。OK 完了。
7. 拡張子:
「未定義を返すのではなく、下にある境界が常に表示されます」この坑道は好都合です。原因。友情@淘宝同学一下。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

このチュートリアルでは、カスタムGoogle検索APIをブログまたはWebサイトに統合する方法を示し、標準のWordPressテーマ検索関数よりも洗練された検索エクスペリエンスを提供します。 驚くほど簡単です!検索をyに制限することができます

楽なWebページレイアウトのためにjQueryを活用する:8本質的なプラグイン jQueryは、Webページのレイアウトを大幅に簡素化します。 この記事では、プロセスを合理化する8つの強力なjQueryプラグイン、特に手動のウェブサイトの作成に役立ちます

それで、あなたはここで、Ajaxと呼ばれるこのことについてすべてを学ぶ準備ができています。しかし、それは正確には何ですか? Ajaxという用語は、動的でインタラクティブなWebコンテンツを作成するために使用されるテクノロジーのゆるいグループ化を指します。 Ajaxという用語は、もともとJesse Jによって造られました

コアポイント これは通常、メソッドを「所有」するオブジェクトを指しますが、関数がどのように呼び出されるかに依存します。 現在のオブジェクトがない場合、これはグローバルオブジェクトを指します。 Webブラウザでは、ウィンドウで表されます。 関数を呼び出すと、これはグローバルオブジェクトを維持しますが、オブジェクトコンストラクターまたはそのメソッドを呼び出すとき、これはオブジェクトのインスタンスを指します。 call()、apply()、bind()などのメソッドを使用して、このコンテキストを変更できます。これらのメソッドは、与えられたこの値とパラメーターを使用して関数を呼び出します。 JavaScriptは優れたプログラミング言語です。数年前、この文はそうでした

この投稿は、Android、BlackBerry、およびiPhoneアプリ開発用の有用なチートシート、リファレンスガイド、クイックレシピ、コードスニペットをコンパイルします。 開発者がいないべきではありません! タッチジェスチャーリファレンスガイド(PDF) Desigの貴重なリソース

jQueryは素晴らしいJavaScriptフレームワークです。ただし、他のライブラリと同様に、何が起こっているのかを発見するためにフードの下に入る必要がある場合があります。おそらく、バグをトレースしているか、jQueryが特定のUIをどのように達成するかに興味があるからです

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。
