Добрый день. Используется загрузка видео в определенный Youtube-канал на самом сайте. При помощи JS создается форма и iframe (name=«myframe»), для формы указываю через атрибут
target этот созданный
iframe. В самом Youtube API после загрузки видео, делается редирект на url содержащий GET параметры status и id:
testik.ru/upload.php?status=200&id=[id_video]
В Chrome и Firefox я могу получить нужный мне адрес из iframe:
window.frames['myframe'].location.href
А Opera всегда возвращает about:blank, и к тому же не отображает содержимое iframe… Т.е. само видео загружено, а получить корректный ID видео я не могу.
Сейчас более подробно опишу, как я создаю форму и фрейм:
//Ответ от Youtube-API
json = {
url: [url_from_youtube]?nexturl=[my_url],
token: [access_token_from_youtube]
}
var form = $('<form action="' + json.url + '" method="post" enctype="multipart/form-data">');
form.attr('id', 'iform');
form.appendTo(document.body);
form.css({
'position': 'absolute',
'top': '-50%',
'left': '-50%'
});
var file = $('#' + fileId);
file.attr('name', 'file');
file.appendTo(form);
var hidden = $('<input type="hidden" name="token" value="' + json.token + '">');
hidden.appendTo(form);
var iframe = $('<iframe>');
iframe.css({
'position': 'fixed',
'top': '50%',
'left': '50%',
});
iframe.attr('name', 'iyoutube');
frame.attr('id', 'iyoutube');
iframe.appendTo(document.body);
form.attr('target', 'iyoutube');
form.submit();
iframe.load(function() {
var uri = window.frames['iyoutube'].location.href;
console.log(uri); // Opera return 'about:blank'
});
Извините, может очень глупый вопрос, все время сижу только Chrome… Можно ли как-то решить проблему с Оперой?
Спасибо!!!