用jquery添加css文件

IT技术 javascript jquery css
2021-01-25 20:14:28

我正在创建一个弹出窗口,我想向该弹出窗口添加一个 css 文件。下面是弹出窗口的代码。我有一个创建弹出窗口的 JavaScript。

<a href="popupwindowcontent.xhtml" title="Print" class="popupwindow">Print1</a>

现在我想向这个弹出窗口添加一个 css 文件。我试过类似的东西

$('.popupwindow').append('<link rel="stylesheet" href="css/style2.css" type="text/css" />');


 $('head').append('<link rel="stylesheet" href="css/style2.css" type="text/css" />');

但它不起作用。

6个回答
$('head').append('<link rel="stylesheet" href="style2.css" type="text/css" />');

这应该有效。

值得注意的是,这似乎不允许在 css 中通常应用的常规级别的“级联规则”。如果在两个样式表中使用相同的选择器,它将采用通过头部链接标记的方式正常输入的前一个规则,而不是在新的、更靠后的列表中注入的样式表中的规则。我不确定为什么或什至它会在所有浏览器中执行此操作。所以....计划在辅助样式表中使用更具体的选择器。:)
2021-03-19 20:14:28
这也适用于 <script> 标签吗??我尝试使用相同的方法,但只是将链接替换为脚本。虽然不工作。
2021-03-27 20:14:28
它将样式应用于我只想将该 css 应用于弹出窗口的文件。
2021-03-30 20:14:28
我正在使用这个 popupwindow github.com/rip747/popupwindow您可以创建一个本地 .xhtml 文件并将其链接到任何示例并尝试更改 popupwindow 的样式。让我知道这是否有效。该站点位于我们的本地服务器上,因此外部人员无法访问它。
2021-04-10 20:14:28

这就是我使用 jQuery ajax 添加 css 的方式。希望它可以帮助某人..

$.ajax({
            url:"site/test/style.css",
            success:function(data){
                 $("<style></style>").appendTo("head").html(data);
            }
        })
    var css_link = $("<link>", {
        rel: "stylesheet",
        type: "text/css",
        href: "yourcustomaddress/bundles/andreistatistics/css/like.css"
    });
    css_link.appendTo('head');

只是我的几美分……有时最好确保没有任何重复……所以我们在 utils 库中有下一个函数:

jQuery.loadCSS = function(url) {
    if (!$('link[href="' + url + '"]').length)
        $('head').append('<link rel="stylesheet" type="text/css" href="' + url + '">');
}

如何使用:

$.loadCSS('css/style2.css');
loadCSS 甚至可以通过向 url 添加或不添加带时间戳的查询参数来告知是否从缓存加载 CSS 文件。
2021-03-16 20:14:28

试着反过来做。

$('<link rel="stylesheet" href="css/style2.css" type="text/css" />').appendTo('head');
但它在弹出窗口和当前页面中的页面相同
2021-03-18 20:14:28
哦,那么在加载页面时添加css文件,然后在css文件中为popup提供样式。
2021-03-23 20:14:28
你用什么来调用弹出窗口?窗口。打开?或者它是一个javascript弹出窗口?
2021-04-01 20:14:28
所以?您可以使用类为页面和弹出窗口中的元素设置不同的样式
2021-04-03 20:14:28
这就是我想要做的。
2021-04-09 20:14:28