解决javascript跨域传值问题的方法

解决javascript跨域传值问题的方法

今天帮"阿辉小屋javascriptⅠ"QQ群里卡缪解决了一个javascript 跨域传值的问题.
问题描述:
站点A上一个页面 a.html 的iframe下有一个站点B上的一个页面b.html.想把页面b.html的一个字符串传给页面a.htmlA 的域名为:www.aaa.com B的域名为:www.bbb.net .问题是直接引用会出现没有权限的错误.

解决办法:
第一种:利用windows的剪粘板第二种:在B上生成一个文件
a.html的内容为:

解决javascript跨域传值问题的方法<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
解决javascript跨域传值问题的方法<htmlxmlns="http://www.w3.org/1999/xhtml">
解决javascript跨域传值问题的方法<head>
解决javascript跨域传值问题的方法<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
解决javascript跨域传值问题的方法<title>js跨域</title>
解决javascript跨域传值问题的方法解决javascript跨域传值问题的方法<scriptlanguage="javascript"defer="defer">
解决javascript跨域传值问题的方法document.getElementById("aaa").style.height=parseInt(window.clipboardData.getData("text"))+50+"px";
解决javascript跨域传值问题的方法
</script>
解决javascript跨域传值问题的方法</head>
解决javascript跨域传值问题的方法
解决javascript跨域传值问题的方法
<body>
解决javascript跨域传值问题的方法<iframeid="aaa"src="http://ladder.nyist.net/ladder/chenchun/B.html">
解决javascript跨域传值问题的方法</iframe>
解决javascript跨域传值问题的方法</body>
解决javascript跨域传值问题的方法</html>

b.html

解决javascript跨域传值问题的方法<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
解决javascript跨域传值问题的方法<htmlxmlns="http://www.w3.org/1999/xhtml">
解决javascript跨域传值问题的方法<head>
解决javascript跨域传值问题的方法<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
解决javascript跨域传值问题的方法<title>js跨域</title>
解决javascript跨域传值问题的方法解决javascript跨域传值问题的方法<scriptlanguage="javascript"defer="defer">
解决javascript跨域传值问题的方法window.clipboardData.setData("text",String(window.document.body.scrollHeight));
解决javascript跨域传值问题的方法
</script>
解决javascript跨域传值问题的方法</head>
解决javascript跨域传值问题的方法<body>
解决javascript跨域传值问题的方法<tablewidth="600"height="284"border="1"align="center"cellpadding="0"cellspacing="0">
解决javascript跨域传值问题的方法<tr>
解决javascript跨域传值问题的方法<td>a</td>
解决javascript跨域传值问题的方法<td>a</td>
解决javascript跨域传值问题的方法<td>a</td>
解决javascript跨域传值问题的方法</tr>
解决javascript跨域传值问题的方法</table>
解决javascript跨域传值问题的方法</body>
解决javascript跨域传值问题的方法</html>


原理:
在b.html里面将要传递的值在页面被加载时存进windows的剪粘板,a.html中从剪粘板中读出数据

但这种方法有他的局限性:只对windows 下的IE有用
最后卡缪把要传的值生成一个js文件存在B的服务器上,在a.html里引用该js 文件,原理基本上一样,哈哈~


补冲一下:
今天上课是和同学讨论了这个问题,以上的办法,只限于,对两个服务器都有读写的权限.当对B没有操
作的权限时,的解决办法为.读取b.html处理后直接写到a.html里面(读取的办法有好多,其中有一种是利用SOCKET 另外asp.net 里面还有好几种方法可以做到)