我将iFrame代码提供给客户端,以便他们可以显示来自我的网站的动态内容。我希望位于其页面上的 iFrame 调整大小以适应我的内容。我按照easyXDM网站上的说明进行操作,但也许我错过了一些东西。
我没有收到任何错误,但 iFrame 保持默认高度 (150px)。我给客户网站的代码是:
<script src="http://test.pronetis.net/SNM.CMS/js/easyXDM/easyXDM.debug.js" type="text/javascript"></script>
<script type="text/javascript">
var transport = new easyXDM.Socket({
remote: "http://www.lipsum.com/",
container: "container",
onMessage: function (message, origin) {
this.container.getElementsByTagName("iframe")[0].style.height = message + "px";
}
});
</script>
<div id="container"></div>
这是我要嵌入的文档上的代码:
<script src="http://test.pronetis.net/SNM.CMS/js/easyXDM/easyXDM.debug.js" type="text/javascript"></script>
<script type="text/javascript">
var socket = new easyXDM.Socket({
onReady: function () { socket.postMessage(document.body.scrollHeight) }
});
</script>
我希望有一些简单的事情我做错了...
这很晚,但您尚未添加任何备份传输方法。将名称.html文件和easyxdm.swf文件放在您网站的根目录中,然后使用下面的修改代码
客户网站
添加 remoteHelper 属性以指向您的 name.html,并添加 swf 属性以指向 easyxdm.swf 文件。
<div id="container"></div>
<script src="http://test.pronetis.net/SNM.CMS/js/easyXDM/easyXDM.debug.js" type="text/javascript"></script>
<script type="text/javascript">
var transport = new easyXDM.Socket({
remote: "http://www.lipsum.com/",
remoteHelper: "http://www.lipsum.com/name.html",
swf: "http://www.lipsum.com/easyxdm.swf",
container: "container",
onMessage: function (message, origin) {
this.container.getElementsByTagName("iframe")[0].style.height = message + "px";
}
});
</script>
您的网站
将属性添加到 local 以指向根目录中的名称.html。
<script type="text/javascript">
var socket = new easyXDM.Socket({
local: "name.html",
onReady: function () {
socket.postMessage(document.body.scrollHeight);
}
});
</script>
您还应该确保网站上的代码段位于页面所有内容的下方,因此最好放在 </body>
标记之前。
您可以从这里下载包含name.html和easyxdm.swf的easyxdm最新版本。