Я работаю над проектом для своего рабочего сайта, который включает в себя внедрение PDF файлов в iFrame. Эти PDF файлы имеют ссылки на PDF файлы в них (тот же домен), и мне нужно отслеживать текущий URL-адрес, на котором они находятся, чтобы я мог показать "объявление" для книги, в которую пришел PDF.
Соответствующий раздел кода:
function ShowResults() {
var gender = document.getElementById('gender').selectedIndex;
var level = document.getElementById('level').selectedIndex;
switch (gender) {
case 0: switch (level) {
case 0: document.getElementById('results').src = "../dropdown/elementary_male.pdf";
break;
case 1: document.getElementById('results').src = "../dropdown/middle_male.pdf";
break;
case 2: document.getElementById('results').src = "../dropdown/high_male.pdf";
break;
case 3: document.getElementById('results').src = "../dropdown/college_male.pdf";
break;
};
break;
case 1: switch (level) {
case 0: document.getElementById('results').src = "../dropdown/elementary_female.pdf";
break;
case 1: document.getElementById('results').src = "../dropdown/middle_female.pdf";
break;
case 2: document.getElementById('results').src = "../dropdown/high_female.pdf";
break;
case 3: document.getElementById('results').src = "../dropdown/college_female.pdf";
break;
};
break;
}
}
Я хочу получить URL-адрес, в котором "результаты" iFrame включены. Я тестирую его, предупреждая document.getElementById('results').contentWindow.location.href
каждые две секунды. Это не удается в Firefox с сообщением Error: Permission denied to access property 'href'
, но он отлично работает в Chrome (такой ошибки нет). Что я делаю не так?
Проблема заключалась в том, что я пытаюсь прочитать URL-адрес iFrame, когда iFrame содержит только встроенный PDF файл. Firefox почему-то не нравится. В моем конкретном случае я могу уйти с преобразованием PDF файлов в HTML-документы и использовать их, избегая проблемы вообще (поскольку вложение HTML-документов работает нормально).