如何更改CSS文件或隐藏<link />标签

时间:2016-03-30 13:51:57

标签: javascript css html5

我想通过更改附加的CSS文件来更改网站的设计。当链接带有id“link”

时,我尝试使用脚本
var x = document.getElementByID ("link")
X.href = style2

它不起作用。

我尝试的另一件事是隐藏具有“linkclass”类的<link>标签

<style>
link.linkclass {
  visibility:hidden;
}
</style>

但它也没有用。
有人可以帮忙吗 很抱歉,如果代码格式错误但我无法获得如何在堆栈溢出中格式化代码

3 个答案:

答案 0 :(得分:2)

这有三个问题:

  1. javascript区分大小写。这意味着X是与x
  2. 不同的变量
  3. style2不是有效的网址。您必须使用现有.css文件的URL
  4. <link>不是可见元素。隐藏一个首先不可见的元素什么都不会实现。
  5. 这有效:

    var x = document.getElementByID("link");
    x.href = "http://url/to/your/style2.css";
    // ^ notice the lowercase x
    

答案 1 :(得分:0)

你可以做到

$("#link").disabled = true;

这也可行。

document.getElementByID("link").disabled = true;

此处还有另一个Stack问题。 Removing or Replacing a Stykesheet

<强>更新

您说您正在尝试更改样式表。你可以像这样创建一个函数。

function styleSheetSwitcher( newFile ){
    $("#link").prop("href", newFile);
}

styleSheetSwitcher("myNewCss.css");

答案 2 :(得分:0)

如果你想隐藏元素(我从你的例子中得到了这个印象),你的javascript代码应如下所示:

var x = document.getElementById("link");
x.style.display = 'none';

还要注意以下事项:

-uppercase letters getElementbyId

- 你在第一次表达后缺少分号(;)

- 你的变量&#34; x&#34;在第二行是大写(&#34; X&#34;)。

在大多数情况下,这应该足以使用CSS禁用元素,只需将此类(linkclass)添加到要隐藏的元素:

<style>
.linkclass {
  display: none;
}
</style>