Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iFrame的特殊css加载_Javascript_Jquery_Css_Iframe - Fatal编程技术网

Javascript iFrame的特殊css加载

Javascript iFrame的特殊css加载,javascript,jquery,css,iframe,Javascript,Jquery,Css,Iframe,该计划: 我有一个iframe,叫做frame.html。如果frame.html单独显示而不是显示在页面中,则应加载no_frame.css 如果frame.html在页面中显示为iframe,则应加载frame.css CSS应该在frame.html中更改div,因此脚本检查页面是保持单独还是在iframe中很重要。我想在iframe中使用这个脚本,而不仅仅是iframe.html 有没有更好的方法来实现这一点 更新: @亚历克斯K.-像这样 <script type="text/j

该计划:

我有一个iframe,叫做frame.html。如果frame.html单独显示而不是显示在页面中,则应加载no_frame.css

如果frame.html在页面中显示为iframe,则应加载frame.css

CSS应该在frame.html中更改div,因此脚本检查页面是保持单独还是在iframe中很重要。我想在iframe中使用这个脚本,而不仅仅是iframe.html

有没有更好的方法来实现这一点

更新:

@亚历克斯K.-像这样

<script type="text/javascript">
  jQuery(document).ready(function($){
  if (window!=window.top) { framed=true }

    var cssId = 'myCss';  // you could encode the css path itself to generate id..
    if (!document.getElementById(cssId))
    {
        var head  = document.getElementsByTagName('head')[0];
        var link  = document.createElement('link');
        link.id   = cssId;
        link.rel  = 'stylesheet';
        link.type = 'text/css';
        link.href = 'http://website.com/css/frame.css';
        link.media = 'all';
        head.appendChild(link);
    }
});

如果是窗口=window.top{framed=true}然后,如果frame.css和no_frame.css之间的差异最小,您也可以添加一个标志和相关范围css@Neps字体这个看起来怎么样?Primary我只想显示:none一些div。我很确定今天早些时候我建议了@Neps刚才在同一个问题上说的同样的东西…那么为什么你要删除它,假设它是你的,我认为是这样的?跟随@AlexK的评论,然后再添加一个类,即…从那里开始,你只需要维护一个样式表。