我正在尝试创建一个能够更改站点可视化(.css 或 / 和 .js)的网页,以便重新创建 Firebug for Firefox 或 Chrome 的 Inspector 提供的相同实时更改功能。
这里有一张图片可以更好地解释我的任务:
我已经能够使用 iframe 在我的页面中可视化其他站点,但不幸的是,由于“同源策略”,无法更改其可视化并访问其元素。
有没有办法使用 iframe 或在另一个元素中加载外部站点?
更新:
考虑到答案,选项应该是:
- 创建一个 php 代理页面以加载目标站点并在其上更改可视化。
- 创建浏览器扩展。
我尝试了第一个,即使它需要安装一个 Web 服务器(xampp),一个简单的页面调用该函数file_get_contents('http://www.site.com')
;
页面已加载但不幸错过了一些元素(如图像),它只是一个静态副本;
无法在站点导航中走得更远。
更新 2:
如果可以实时更改代码,那么通过 javascript 加载整个页面可能是更好的解决方案(我不知道如何),但是与此“页面副本”交互并将交互转移到原始页面的可能性呢?
方案:
解释:
我注意到 Firebug 扩展可以选择和实时编辑任何页面元素,即使它们属于加载外部域页面的 iframe。
我正在寻找的是一种像 Firebug 一样的方式,获取一个元素并改变它的样式。
我正在尝试将网站加载到 iframe 中,因为我想在其上方创建一个工具栏来选择我的“可视化样式”;例如一个使标题变大变红的按钮。
无论如何,我对任何其他方法建议持开放态度。
更新 3:
我为 FireFox 和 Chrome 找到了一个扩展,它非常接近我的目标:"Stylish"
这个插件允许实时更改任何站点的 css 属性并保存它,以便在每次访问页面时重新加载它们。
现在我的问题是:如何创建专用页面来加载和更改特定站点的可视化?
最终编辑:
为了用更相关的论点继续这个问题,我决定问一个新的问题:
创建一个 php 代理页面