Получить ссылку из iframe
Здравствуйте. Имею ссылку на .xml документ. В нём есть iframe( ссылка на видео)
Получить сам iframe с документа могу. Имеет такой вид <iframe width="720" height="405" src="//ххх" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowfullscreen></iframe> Подскажите как вытащить src="//ххх". |
var tmpElement = document.createElement('div');
tmpElement.innerHTML = '<тут твой код html>';
var src = tmp.getElementsByTagName('iframe')[0].src;
|
Хотя в идеале должно быть так:
var html = '<iframe width="720" height="405" src="//ххх" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowfullscreen></iframe>';
var doc = (new DOMParser()).parseFromString(html, 'text/html');
var src = doc.querySelector('iframe').getAttribute('src');
alert(src);
К сожалению не работает в старых браузерах. |
Большое спасибо, полдела сделанно. В alert вывело //xxx. А как мне её в переменную вывести, что бы использовать дальше можно было.echo не получается. Как то обратится к ф-ции надо, или как. Простите за тупость. И ещё, дело в том ,что самого документа у меня как бы нет, всё в динамике. Есть переменная которая обращается к тегу <html>, (в котором прписан код ифрейма),в xml документе. Можно поместить в "var html" эту переменную? Если да, то как правильно прописать.
|
Цитата:
|
$abc = 'http://rutube.ru/api/oembed/?url='.$url.'/&format=xml';
$xml = simplexml_load_file($abc); $abc = (string) $xml->html; В $abc у меня получактся этот iframe. echo $abc открывает плеер с роликом. Сам документ можно посмотреть по ссылке:http://rutube.ru/api/oembed/?url=htt...cf/&format=xml |
Ааа... дык PHP?
Ну тогда можешь DOMDocument заюзать:
<?php
$abc = '<iframe width="720" height="405" src="//xxx" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowfullscreen></iframe>';
$dom = new DOMDocument();
$dom->loadHTML($abc);
$iframe = $dom->getElementsByTagName('iframe')->item(0);
$src = $iframe->getAttribute('src');
echo $src;
Хотя решение тяжеловесное. Если нужна скорость, или хочется избавиться от лишней зависимости (расширение DOMDocument), можешь регулярку найти и заюзать. Хотя регулярки не советуют юзать для HTML. |
Вот сейчас как раз и курю маны по регулярке, но подумал может ф-циями красивей получится. Спасибо за помощь и совет пойду вникать.
|
| Часовой пояс GMT +3, время: 05:33. |