次のコードがあります。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
var script_obj = document.getElementsByTagName('script')
alert(typeof script_obj);
});
</script>
これを Firefox (v21) と Chrome (v29) で実行するとobject
結果が得られますが、Safari (v5) ではfunction
.
どうしてこれなの?!
スクリプトの残りの部分では、データscript_obj
を取得するために反復処理を行っていますが、 (つまり)の長さを決定する関数には、 がまたはでないかどうかを返すチェックがあるため、Safari では失敗しています。を使用する代わりにこれを行う別の方法はありますか?!.src
count
haystack
script_obj
false
haystack
array
object
document.getElementsByTagName('script')