1
我試圖動態調整基於其內容高度,使用easyXDM的iframe的高度。代碼會調用每5秒鐘檢查一次iframe的body.scrollheight,理論上說,如果頁面高度已更改,iframe高度將每隔5秒更新一次。它在最初的調用中工作 - iframe甚至可以正確調整大小。問題在於即使iframe內容的高度發生變化,提供者也會繼續返回內容的原始高度。定期報告與易於xdm跨域的DOM屬性
代碼:
消費者(頁面包含的iframe):
var socket = new easyXDM.Socket({
remote: "http://remoteDomain.ca/blahblah.html",
container: "embedded",
onMessage: function(message, origin){
alert(message); //continually alerts "542px" even when body.scrollheight
// has changed
document.getElementById('iframe').style.height = message + "px";
var t = setTimeout(function() {
socket.postMessage();
}, 5000);
},
onReady: function() {
socket.postMessage();
}
});
供應商(iframe中的內容):
var socket = new easyXDM.Socket({
onMessage: function(message, origin){
socket.postMessage(document.body.scrollHeight);
}
});