我想将css应用于谷歌日历iframe。
我曾尝试使用Jquery,但它给出了JavaScript安全性错误。
但我也试过this link
取得了成功,但很多链接都转到了404页面,因为它将我的域名作为基本网址
答案 0 :(得分:0)
您 无法 将css应用于iFrame ......
iframe是您网页中显示另一个网页的“漏洞” 在里面。 iframe的内容不是任何形状或形式 你父母页面的一部分。
来自here
背后的原因是安全性。如果你有一个blabla.com 窗口和gmail.com在另一个,然后你不想要一个脚本 blabla.com访问或修改您的邮件或在上下文中运行操作 gmail代表你。
来自here
如果iFrame位于同一个域且未违反"Same-origin policy" ,您可以解决以下问题:
$('iframe').load( function() {
$('iframe').contents().find("head")
.append($("<style type='text/css'> .my-class{display:none;} </style>"));
});
已发布解决方案here
无论如何,如果您没有违反“相同的政策”,您可能不想使用iFrame。
答案 1 :(得分:0)
使用javascript将css应用于包含其他域中的页面的iframe时,您将面临安全性错误。但是这个问题有一个解决方法,如果两个文件都在同一个顶级域,使用相同的协议和文件,使用document.domain。您可以将以下JavaScript行添加到iframe中的页面:
document.domain = "example.com";
包含iframe的页面需要相同的行才能使域匹配。一旦到位,允许在主页面上运行的脚本访问iframe元素中文档的属性 -