是否可以使用AMP创建友好的iframe?
我正在查看 amp-iframe 标记,但它需要src,这使得它属于另一个域,从而限制了由于跨域策略对父文档的访问。
有没有办法创建一个友好的iframe,它没有这样的限制?
更新 我正在尝试将小部件嵌入到AMP页面中,该页面将根据页面关键字和广告显示其他交互式内容。在“传统”网页上,这可以通过友好的iframe完成。我想知道AMP是否有一些解决方法?
答案 0 :(得分:0)
您可以尝试使用沙箱属性
<amp-iframe width="600"
title="Google map pin on Googleplex, Mountain View CA"
height="400"
layout="responsive"
sandbox="allow-scripts allow-same-origin allow-popups"
frameborder="0"
src="https://www.google.com/maps/embed/v1/place?q=place_id:ChIJ2eUgeAK6j4ARbn5u_wAGqWA&key=AIzaSyCNCZ0Twm_HFRaZ5i-FuPDYs3rLwm4_848">
</amp-iframe>
答案 1 :(得分:0)
无法创建友好的iframe,原因是AMP页面可能通过不同来源的AMP缓存提供。在这种情况下,友好的iframe将不再有效。
如果省略amp-iframe
属性,则可以通过allow-same-origin
嵌入来自同一来源的iframe。还有一个新的two-way-messaging between amp-iframes and the AMP doc正在实施中。这应该很快就会出现。