Подтвердить что ты не робот

Добавление файла css с jquery

Я создаю popupwindow, и я хочу добавить файл css в этот popupwindow ниже, это код для popupwindow. У меня есть javascript с созданием popupwindow.

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

Теперь я хочу добавить файл css в этот popupwindow. Я попробовал что-то вроде

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


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

но не работает.

Спасибо

4b9b3361

Ответ 1

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

Это должно работать.

Ответ 2

Вот как я добавляю css, используя jQuery ajax. Надеюсь, это кому-то поможет.

$.ajax({
            url:"site/test/style.css",
            success:function(data){
                 $("<style></style>").appendTo("head").html(data);
            }
        })

Ответ 3

    var css_link = $("<link>", {
        rel: "stylesheet",
        type: "text/css",
        href: "yourcustomaddress/bundles/andreistatistics/css/like.css"
    });
    css_link.appendTo('head');

Ответ 4

Просто мои пары центов... иногда хорошо быть уверенными, что нет никаких дубликатов... поэтому у нас есть следующая функция в библиотеке utils:

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

Как использовать:

$.loadCSS('css/style2.css');

Ответ 5

Ваша проблема в том, что ваш селектор предназначен для элемента привязки <a>. Вы обрабатываете тег <a> так, как будто он представляет страницу, которая не соответствует действительности.

$('head') будет работать до тех пор, пока этот селектор выполняется страницей, которая нуждается в css.

Почему бы просто не добавить файл css на рассматриваемую страницу. Какую-либо особую причину, чтобы сделать это динамически с другой страницы? Я даже не знаком с способом ввода css на удаленные страницы вроде этого... похоже, что это будет серьезная дыра в безопасности.

ДОБАВЛЕНИЕ к вашим аргументам:

Затем вы должны просто передать параметр на страницу, прочитать его с помощью javascript, а затем сделать все, что необходимо на основе параметра.

Ответ 6

Попробуйте сделать это наоборот.

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

Ответ 7

Я не думаю, что вы можете подключиться к окну, в котором вы инстинктивно... Я ЗНАЮ, что вы не можете этого сделать, если URL-адрес находится в разных доменах (XSS и весь этот джаз), но вы можете говорить UP из этого окна и элементов доступа родительского окна при условии, что они находятся в одном домене. лучше всего прикрепить таблицу стилей на странице, которую вы загружаете, и если эта страница не находится в том же домене (например, пытается переделать какую-то другую страницу), вы не сможете.

Ответ 8

Вы пробовали просто использовать атрибут media для ссылки css?

<link rel="stylesheet" href="css/style2.css" media="print" type="text/css" />

Или установите его на экран, если вы не хотите, чтобы печатная версия использовала стиль:

<link rel="stylesheet" href="css/style2.css" media="screen" type="text/css" />

Таким образом, вам не нужно добавлять его динамически.