Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   userscripts "История фрейма" (https://javascript.ru/forum/css-html-internet-explorer/50861-userscripts-istoriya-frejjma.html)

danik.js 18.10.2014 12:56

После перезагрузки фрейма создается новый contentWindow.
А ты сохранил в ссылку первоначальный contentWindow.location, который возвращает одно и то же.

AlexVong 18.10.2014 15:58

danik.js,
В том то и беда, при каждом обновлении фрейма выводится ссылка на новый фрейм, но только одна, а как сделать чтобы ссылки дописывались в массив чтобы с ним в последующем можно было работать?

danik.js 18.10.2014 19:33

Каждый раз при перезагрузке получать новый contentWindow.location

AlexVong 18.10.2014 19:45

Вот так?
// ==UserScript==
// @name          MainJS
// @description   Iframe
// @include       [url]https://web-base.*[/url]
// ==/UserScript==
//alert('test');
//var urr;
var arr = [];
arr.push('https://web-base/index/');
var iframe = document.getElementById('BaseFrame');

function refresh( ) {
var lastItem = arr[arr.length-1];
urr = iframe.contentWindow.location;
if (urr !== lastItem) {
arr.push(urr);
alert(lastItem);
}
else {
alert(arr);
}
}
if (iframe.attachEvent) iframe.attachEvent('onload', refresh);
else iframe.attachEvent('load', refresh, false);

AlexVong 28.10.2014 17:16

Скрипт работает на ура ....
Но только не на всех машинах... Почему?
Сайт один и тот же, везде IE8, Win7, но на некоторых машинах не определяется фрейм document.getElementById('BaseFrame') - возвращает null. Какие настройки IE могут на это влиять?


Часовой пояс GMT +3, время: 21:36.