Tuesday, September 30, 2008

iFrame

Передача данных из основной страницы в iFrame. Это одна из возможностей HTML5, которую можно использовать уже сейчас:


<iframe src="http://damowmow.com/playground/demos/gadget/gadget.html">
</iframe>


<p> <label>
Nick: <input type=text name=nick onkeyup="updateNick(value)">
</label>




<script>
function updateNick(nick) {
frames[0].postMessage('nick=' + nick,
'http://damowmow.com/playground/demos/gadget/gadget.html');
}
</script>


а в iFrame прием сообщений выглядит так:

<p>Hello <span id=nick>Sir</span>!</p>
<script>
addEventListener('message', function (e) {
if (e.origin == "http://www.whatwg.org" &&
e.data.substr(0,5) == "nick=")
document.getElementById('nick').firstChild.data = e.data.substr(5);
}, false);
</script>

проверятся, откуда осуществлена публикация (e.origin == "http://www.whatwg.org"). Полезная вещь для мэшапов. Например, на веб-странице встраивается карта из Google Maps и в нее можно передавать данные из основной страницы.

Отсюда

No comments: