1
我有瀏覽器擴展打開一個iFrame並允許用戶做東西,然後更新父頁面上的值。跨越不同的域,並使用postMessage和receiveMessage,以便我可以跨域傳遞消息。這效果很好,我可以使用這些消息在父頁面上的控件中設置某些值。我可以設置選擇框的值,但我也需要通過jQuery交叉腳本postmessage後選擇火災更改事件
火選擇box'es變化事件$("#selectid").change();
這工作,如果從用戶事件調用的頁面上,而是從receiveMessage調用時,它只是不會觸發更改事件。我相信這可能是爲了防止交叉腳本攻擊,但是由於我可以設置該值,所以我當然也應該能夠調用change事件。任何人都可以確認這種行爲和/或瞭解工作。
PS。我使用的代碼是大型應用程序的一部分,我沒有可以輕鬆展示的演示,但上面的解釋非常詳細。
這onchange事件處理程序使用jQuery綁定?也許你應該派遣事件,而不是:http://stackoverflow.com/a/22404414/1414562 –
這樣做的伎倆感謝 - 快速回應。 你可以闡明爲什麼dispatchEvent的作品,jQuery的變化或觸發事件不? –
使用jQuery觸發onchange事件不會觸發處理程序綁定使用例如addEventListener()javascript的方法 –