jQuery(javascript)无法跨域,怎么解决?是想获取iframe的框架里面的东西!!

我用了iframe框架,想获取里面的一些元素,但是被提示没有权限,查了资料是js无法跨域。但是,我都是同一个域名啊。我是用asp.net。请问高手怎么是解决的呀?就像图一样,我点单击左边框架的链接,右边框架就会显示相应的页面.我现在在这个页面,用js想获取右边框架的一些元素。这个问题怎么解决呢?

这里主要就是通过JS来操作Window对象。Window 对象表示浏览器中打开的窗口,如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。

 经过我在网上查资料,找到了JS操作iframe中HTML元素的方法。示例如下。
1function ShowExit() {
2//获取iframe的window对象3var topWin = window.top.document.getElementById("topNav").contentWindow;
4//通过获取到的window对象操作HTML元素,这和普通页面一样5 topWin.document.getElementById("exit").style.visibility = "visible";
6 }
  说明:第一步,通过window.top.document.getElementById("topNav")方法获取了顶部菜单页面(topPage.htm)所在的iframe对象;第二步,通过上一步获取到的iframe对象的contentWindow属性得到了iframe中元素所在的window对象;第三步,通过上一步获取到的window对象来操作iframe框架中的元素,这和操作不在iframe框架中的普通HTML元素是一样的。
http://www.cnblogs.com/sunyunh/archive/2012/09/15/2687056.html
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-13
小波,我看过你的页面,你是一个大框架,然后左边一个,右边一个。对于左右2个框架是平等的关系。你想要在左框架获取右框架的元素是不算跨域的。他们同属于一个父节点。所以,你只需要先调用父节点对象,然后从父节点访问子节点即可。像这样:parent.frames['rightF'].document;rightF是右边框架的名字。如果用的是ID就:parent.document.getElementById('rightF').document;本回答被网友采纳
第2个回答  2013-04-13
$("iframe").contents().find("#id")
第3个回答  2013-04-13
if (document.all){//IE
doc = document.frames["MyIFrame"].document;
}else{//Firefox
doc = document.getElementById("MyIFrame").contentDocument;
}