Reputation: 33
**
RESOLVED
**
I'm developing a chrome extension. reading on stackoverflow I was able to share the local storage between different domains and to send a data from the extension to my external site.
what I would like to do, however, is to send more than one message to the external site. how can i adapt the code i am using? i am not very familiar with js, sorry
This is the code on popup.html -> extension (function perfectly)
window.onload = function() {
var receiver = document.getElementById('receiver').contentWindow;
var btn = document.getElementById('send');
function sendMessage(e) {
e.preventDefault();
receiver.postMessage(document.getElementById('D1').value, 'http://externalsite');
}
btn.addEventListener('click', sendMessage);
}
This is the code on external site -> receiver
window.onload=function(){ var messageEle=document.getElementById('message');
window.addEventListener('message',receiveMessage);
function receiveMessage(e){
if(e.origin!=="chrome-extension://ldjfmalmmomhpjmoeemlaingagdhagjl")
return;
messageEle.value = e.data;
}
}
What i need is send more of
receiver.postMessage(document.getElementById('D1').value, 'http://externalsite');
for example
receiver.postMessage(document.getElementById('D1').value, 'http://externalsite');
receiver.postMessage(document.getElementById('D2').value, 'http://externalsite');
receiver.postMessage(document.getElementById('D3').value, 'http://externalsite');
Thanks a lot
Upvotes: 1
Views: 282
Reputation: 33
for helping other, i resolve in this mode
in popup.html code on extension
window.onload = function() {
var receiver = document.getElementById('receiver').contentWindow;
var data = {
domanda1: (document.getElementById('D1').value),
domanda2: (document.getElementById('D2').value),
domanda3: (document.getElementById('D3').value)
};
var btn = document.getElementById('send');
function sendMessage(e) {
e.preventDefault();
receiver.postMessage(data, 'externaldomain');
}
btn.addEventListener('click', sendMessage);
}
and in the receiver page -external site- with code
window.onload=function(){
var domanda1=document.getElementById('domanda1');
var domanda2=document.getElementById('domanda2');
var domanda3=document.getElementById('domanda3');
window.addEventListener('message',receiveMessage);
function receiveMessage(e){
if(e.origin!=="chrome-extension://ldjfmalmmomhpjmoeemlaingagdhagjl")
return;
domanda1.value = e.data.domanda1;
domanda2.value = e.data.domanda2;
domanda3.value = e.data.domanda3;
}
}
ps = thanks to wOxxOm for help
Upvotes: 1