前提・実現したいこと
javascriptにて、xx.childNodes の動作が、モダンブラウザでも古いIEと同様に空文字要素をスルーする挙動にしたい。
<div id="ct"> <li>1</li> <li>2</li> <li></li> </div> //document.getElementById("ct").childNodes.length // 古いIE -> 3 // モダンブラウザ -> 7
既存のコードを変更することなく(一旦要素を取得してから処理を追加するなどの方法ではなく)、document.getElementById("ct").childNodes.length でモダンブラウザでも「3」と出力されるようにしたい(オーバーライド?したい)。
「モダンブラウザ」とは何を指していますか?chrome(バージョン: 67.0.3396.99)でもEdge(42.17134.1.0)でも「document.getElementById("ct").childNodes.length」の結果は「3」と出力されるのですが。。。