Я пытаюсь работать с функцией postMessage HTML?HTML 5 postMessage (тот же домен)
У меня есть несколько сайтов, дающих пример, но по какой-то причине борется.
Код для 2-х страниц приведен ниже, любая помощь будет оценена.
Спасибо и наилучшими пожеланиями, Райан
test.php
<iframe src="postmessage-target.html" id="iframe"></iframe>
<form id="form">
<input type="text" id="msg" value="Message to send"/>
<input type="submit"/>
</form>
<script>
window.onload = function(){
var win = document.getElementById("iframe").contentWindow;
document.getElementById("form").onsubmit = function(e){
win.postMessage(document.getElementById("msg").value);
e.preventDefault();
};
};
</script>
PostMessage-target.html
<div id="test">Send me a message!</div>
<script>
document.addEventListener("message", function(e){
document.getElementById("test").textContent =
e.domain + " said: " + e.data;
}, false);
</script>
Еще раз спасибо заранее.
Райан
UPDATE
Правильно ли это в соответствии с уведомлением пользователя?
test.html
<iframe src="postmessage-target.html" id="iframe"></iframe>
<form id="form">
<input type="text" id="msg" value="Message to send"/>
<input type="submit"/>
</form>
<script>
window.onload = function(){
var win = document.getElementById("iframe").contentWindow;
document.getElementById("form").onsubmit = function(e){
win.postMessage(document.getElementById("msg").value, "*");
e.preventDefault();
};
};
</script>
PostMessage-target.html
<div id="test">Send me a message!</div>
<script>
document.addEventListener("message", function(e){
document.getElementById("test").innerHTML = e.origin + " said: " + e.data;
}, false);
</script>
Привет @dystroy, см. Обновление, я сделал это правильно? Спасибо, – Smudger
Я все еще вижу те же ошибки. Вы уверены, что обновились? Кстати, лучше всего попробовать. –