Ответ 1
Возьмите элемент ссылки и отключите его
document.getElementsByTagName('link')[0].disabled = true;
Интересно, как можно было бы выгрузить CSS со страницы. например На моей странице я включил файл с именем a.css. Теперь я хочу, чтобы пользователь мог изменить тему, которая управляется CSS, поэтому он/она должен иметь возможность разгружать a.css, а затем я могу загрузить b.css(иначе они будут конфликтующими)
Любая идея, как это сделать?
Возьмите элемент ссылки и отключите его
document.getElementsByTagName('link')[0].disabled = true;
С jquery это работает:
$("link[href='fileToRemove.css']").remove();
Очевидно, замените fileToRemove.css на относительный путь и имя файла для разгрузки.
var firstLink = document.getElementsByTagName('link')[0];
firstLink.parentNode.removeChild(firstLink)
Это удалит первый элемент ссылки на странице - не уверен, как структурирован ваш html, но я уверен, что вы можете использовать его в качестве примера. Вы можете проверить атрибут типа, если он "text/css", и вы нацеливаете нужный носитель (экран), или, возможно, проверьте, содержит ли href "css" где угодно, если у вас есть другие элементы ссылок, которые не являются ссылками css.
Примечание. Вы также можете повторно установить атрибут href, чтобы указать на несуществующую страницу, а не полностью удалить элемент.
Как ни странно, IE и firefox поддерживают отключенный атрибут, но не хром, сафари или опера. Таким образом, это должен быть самый перекрестный браузер.
// disables all styles in the document
function unload_stylesheet(DOMelement){
DOMelement.disabled = true;
DOMelement.parentNode.removeChild( DOMelement );
}
// usage
unload_stylesheet( document.getElementsByTagName('link')[0] );