1、在HTML中创建一个空容器元素,例如<div id="import-target"></div>。
2、编写JavaScript代码,调用fetch()请求外部网页URL。
3、使用response.text()获取HTML字符串,并用DOMParser解析为文档对象。
4、从解析后的文档中提取指定ID或类名的元素,例如doc.getElementById('main')。
5、将提取的节点克隆后插入到import-target容器中。若目标网页含相对路径资源链接,则样式与脚本可能失效,需手动修正路径或注入基础CSS/JS。
1.) 将所有文件解压到php环境中,本程序才用smarty+php+mysql设计。如果运行不了,请修改hhy文件夹下的smarty.php文件改法请看说明2.) 修改configs下的config.inc.php下的连接数据库的密码和用户名3.) 本程序没有做安全页面,人工导入sql.inc到mysql数据库。管理员初始化帐号为admin,密码为hhy。后台地址:http://你的网站地址/h
0
三、服务端代理方式引入跨域网页
当外部网页位于不同源且未启用CORS,又无法修改其响应头时,可通过自有服务器作为代理中转请求。前端向本地接口发起AJAX,后端获取远程HTML内容并返回给浏览器,从而规避浏览器同源限制。
1、在服务器端(如Node.js/PHP/Python)创建API端点,例如/proxy?url=https%3A%2F%2Fexample.com。
2、服务端对该URL发起HTTP GET请求,获取响应体及必要头部信息。
3、过滤响应中的敏感头字段(如Set-Cookie),仅保留Content-Type等安全字段。
4、将HTML内容作为响应体返回至前端,状态码设为200。
5、前端使用fetch调用该代理接口,并将返回的HTML字符串写入innerHTML。注意:代理行为需遵守目标网站robots.txt及服务条款,未经授权批量抓取可能构成法律风险。
四、使用object标签替代iframe进行轻量嵌入
object标签可作为iframe的替代方案,用于嵌入外部网页、PDF或其他MIME类型资源。其对部分老旧浏览器支持更佳,且允许定义备用内容,但现代浏览器对其网页嵌入支持逐渐弱化。
1、在HTML中插入<object></object>标签,设置data属性为目标网页URL。
2、设定type属性为text/html,显式声明内容类型。
3、通过width和height控制显示区域大小。
4、在<object></object>标签内部添加纯文本或HTML作为备用内容,供不支持嵌入的环境显示。
5、某些浏览器(如Firefox)对object加载网页存在策略限制,可能出现空白、下载提示或完全忽略data属性。


