私は従来のアプリケーションを維持し、それをクロスブラウザにしようとしています。私はこのような投稿(Javascript: access DOM elements without getElementById)を見つけて、私が持っている問題を明確にしました。ソリューション内のIE依存のJavaScriptのすべてのインスタンスを検索して置き換えるにはどうすればよいですか?
つまり、IEではDOMの要素をIDで呼び出すだけで作業できます。それは非標準ですが、それは動作します。 ChromeやFFはgetElementByID(正しい標準ベースの方法)を使用しているため、2番目にはChromeまたはFirefoxに行きます。古いコードはもう使用できません。
このアプリケーションでは、特定のコントロールがあるかどうかを調べるためにdocument.allなどのものを使用しています。これはすべてgetElementByIDなしで発生します。
このようなIE依存コードを見つけるための簡単な方法はありますか?私はそれを取り除き、より現代的なものに置き換えることができますか?それとも本当ですか?
ありがとうございます!
EDIT:
だから、これは既存のJS
今for (var i = 0; i < grdPreviousEpisode.rows.length; i++)
...
}
にあるコードの一部である、grdPreviousEpisodeは(Webフォーム)でのGridViewです。これはHTMLテーブルとして明示されます。このコードは "getElementById"関数を使用してDOMの "正しい方法"から抜け出していません。それは、可視のJS変数がないときにDOMから項目を渡すIEのひどい方法に依存しています。
他のこのコードでは、特にIE依存のハッキングに依存する部分があります。手動で検索/置換する必要はありません。それは理にかなっていますか?
である場合には、フィルタで