txtファイルからURLを取得してフレームに配置し、各フレームの読み込みにかかる時間を計算するスクリプトを入手しました。URLウィッチにiframe保護(「同一生成元」)が適用されるまではすべて正常に機能します。その後、スクリプトがクラッシュし、他のURLの結果が表示されません。
これが私の現在のスクリプトです:
<script type="text/javascript">
$.get("imones.txt", function (data) {
var array = data.split(/\r\n|\r|\n/);
var beforeLoad = (new Date()).getTime();
var loadTimes = [];
var beforeTimes = [];
$('#frame_id').on('load', function () {
beforeTimes.push(beforeLoad);
loadTimes.push((new Date()).getTime());
$('#frame_id').attr('src', array.pop());
$.each(loadTimes, function (index, value) {
var result = (value - beforeTimes[index]) / 1000;
if (result < 0) {
result = result * (-1);
}
$("#loadingtime" + index).html(result);
beforeLoad = value;
});
}).attr('src', array.pop());
});
</script>
'sameorigin'保護をバイパスしたくないので、保護されているURLをスキップしたいだけです。
この問題を解決するために検索して、stackoverflowでこれを見つけました-http ://jsfiddle.net/LHjwZ/11/
そのコードはまったくわかりませんが、保護されているURL(たとえば、google.com)をtruefalse
入力すると、が返されます。保護されていないURLを入力すると、が返されますfalsefalse
。だから私はそれがどういうわけかurlが'sameorigin'を持っているかどうかを検出し、true
それを持っている場合は返すと思います。そのjsfiddleコードを自分のコードに入れたいのですが、私が言ったように、そのコードがどのように機能するのか理解できません。