Как изменить файл CSS с помощью JavaScript?

Я хотел бы спросить, как изменить SRC CSS с использованием чистого Javascript. Я видел в интернете, что один парень использовал куки для этого, я попробовал вот что:

window.onload = function onload() {
setTimeout(function(){
    document.styleSheets[1].href = "file:///C:/Users/Ma%C5%9Blan/Desktop/Site/bootstrap-3.3.6-dist/project1a.css";
    }, 3000);

};

И это не сработало (я хочу изменить CSS через 3 с, я знаю, что фактическая локализация локальная, на моем ПК. Просто пытаюсь:)). Я хочу поменять весь файл.

Есть идеи? Если это невозможно в чистом JS, покажи мне путь jQuery.

Спасибо!

1 ответ

document.styleSheets свойство READ-ONLY, поэтому вы не сможете изменить свойства этого массива.

Вместо этого вы хотите получить список всех <link> элементы в голове, затем либо используйте регулярное выражение или условное выражение, чтобы получить элемент, который вы хотите заменить, и используйте .href на этом элементе.

НАПРИМЕР

// get all links in the head (including CSS)
var allLinks = document.head.getElementsByTagName('link');
// find and replace the element
for (var i = 0; i < allLinks.length; i++) {
    if ( allLinks[i].href = "old/url/to/css/file.css") {
        allLinks[i].href = "file:///C:/Users/Ma%C5%9Blan/Desktop/Site/bootstrap-3.3.6-dist/project1a.css";
    }
}
Другие вопросы по тегам