首页 新闻 搜索 专区 学院

javascript, jquery 加载一个网页源码到iframe里

0
悬赏园豆:30 [已解决问题] 解决于 2017-04-21 15:55

动态获得网页源码,怎么样赋到iframe里 ? (不能通过修改iframe src属性)

$("#document-iframe").contents().find('html').html(data.Content);

 

这样会自动过滤源码里的 html、head、body标签,结果不是完整的

所以,求问怎么样完整的加载到iframe里 , document对象有这样的方法吗?

寻寻寻觅觅冷冷清清的主页 寻寻寻觅觅冷冷清清 | 初学一级 | 园豆:128
提问于:2017-04-21 11:30
< >
分享
最佳答案
0

为什么一定要修改里面的内容,而不是重新加载iframe

收获园豆:15
龙行天涯 | 小虾三级 |园豆:1821 | 2017-04-21 13:01

就算是重新加载iframe,也达不到我要的效果,网页源码是数据库里查出来的, 没有网址, 怎么完整加载到iframe里

寻寻寻觅觅冷冷清清 | 园豆:128 (初学一级) | 2017-04-21 13:30

@寻寻寻觅觅冷冷清清: 先把源码输出到一个网页,再把iframe的src指向这个网页

龙行天涯 | 园豆:1821 (小虾三级) | 2017-04-21 13:41

@龙行天涯:  能不能直接输出到iframe里

寻寻寻觅觅冷冷清清 | 园豆:128 (初学一级) | 2017-04-21 13:46

@寻寻寻觅觅冷冷清清: iframe的作用就是把另一个页面的内容加载到当前的页面。不明白你直接输出到iframe里是什么意思,iframe只是一个html标签,它的存在是要有另一个页面来衬托的,不然它就没有意义。

龙行天涯 | 园豆:1821 (小虾三级) | 2017-04-21 14:46

@龙行天涯:  

就是形如:

$("#iframe").contents().html(' <html><head></head><body>..................</body></html> ');

$("#div").html('<iframe frameborder="0"><html><head></head><body>..................</body></html></iframe>');

就是这个意思,当然这写法不对

寻寻寻觅觅冷冷清清 | 园豆:128 (初学一级) | 2017-04-21 15:18

@寻寻寻觅觅冷冷清清: 如果这样的话,那你还用iframe干嘛,直接在页面放一个div,然后$("#div").html("源码")更好,不想看到就隐藏咯。

龙行天涯 | 园豆:1821 (小虾三级) | 2017-04-21 15:22

@龙行天涯:  那源码里的 html body  和外面的html body  就冲突了。毕竟源码是独立的网页

寻寻寻觅觅冷冷清清 | 园豆:128 (初学一级) | 2017-04-21 15:28

@寻寻寻觅觅冷冷清清: 冲突也没关系的,是在想不冲突,也可以只获取body里的内容。但那样的话会很麻烦,还不如用iframe加载。

龙行天涯 | 园豆:1821 (小虾三级) | 2017-04-21 15:40
其他回答(2)
0

由于安全性问题,可以搞不定吧。

 

改用div吧

收获园豆:5
狼爷 | 园豆:1197 (小虾三级) | 2017-04-21 11:34
0

iframe 只加载body

所以你的想法不可能实现,除非你去更改iframe底层的源码

收获园豆:10
奈何一笑 | 园豆:439 (菜鸟二级) | 2017-04-21 15:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册