搜尋

首頁  >  問答  >  主體

javascript - js跨域问题

页面里有一个iframe:

<iframe id="iframe_a" src="http://www.hao123.com" frameborder="0"></iframe>

src是任意一个链接,现在想动态的给iframe中的页面加一些东西,因为跨域所以用js做不到(js不能操作跨域的DOM是吗?)。
那有没有别的办法可以做到?

后端是用java做的。

PHP中文网PHP中文网2895 天前483

全部回覆(4)我來回復

  • 高洛峰

    高洛峰2017-04-10 12:50:26

    前端应该是无法办到了。

    可以考虑后端抓取内容进行修改,在输出到前端。

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-10 12:50:26

    死也做不到。千万不要去寻找那些Hack的办法。躲得了初一躲不了十五,骗得过Browser A混不过Browser B。

    用自己域上的java后端污染才是正道,但是这样做后端服务器又会依赖其他服务器而工作(这不同于HTML前端引用个外域js库啥的),连接速度、连接数和服务器带宽资源白白浪费且不说,哪怕遇到原网站宕机那都是噩梦。

    所以建议LZ详细说一下需求,然后在外域数据获取这个环节,再讨论考虑合适的缓存策略。

    回覆
    0
  • 怪我咯

    怪我咯2017-04-10 12:50:26

    JS不仅仅是不能跨域操作跨域DOM,而是根本无法跨域读取任何东西。

    参考浏览器同源策略:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Same_origin_policy_for_JavaScript

    允许跨域写,禁止跨域读

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 12:50:26

    如果只是自用,可以使用 Chrome 扩展的 contentscript 功能实现,或者使用 userscript,不然就真没有办法了。

    回覆
    0
  • 取消回覆