我想控制来自不同主机的内容上的图像宽度。此内容显示在 iframe 中。我无法控制此远程内容。
根据我的测试,如果 iframe 的内容来自同一主机,尝试更改图像宽度(使用 CSS 和 javascript)似乎有效,但如果来自不同主机则无效。似乎这受到同源策略“http://en.wikipedia.org/wiki/Same_origin_policy”的限制(这是正确的吗?还是我错了?),似乎唯一的方法是拉取远程内容并执行一个预处理(服务器端)来修改该内容(更改图像的宽度)然后显示该内容,但如果可以只使用 CSS 或/和 javascript,我不想采用这种方式。有人可以给我一些关于仅使用 CSS 和/或 javascript 对 iframe 中的内容执行此操作的指导吗? (请记住,内容来自不同的主机)。
最佳答案
您的分析是正确的。
如果你想改变你需要的那些图像
- 服务器的协作(using headers)
- 或一种服务器端代理,让浏览器认为只有一个来源
由于它是一个安全系统(针对用户),因此在现代浏览器上当然没有已知的解决方法。
您不能仅使用客户端跨浏览器解决方案来做到这一点。
关于javascript - 控制来自不同主机的内容的图像宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12164565/