0

我正在尝试使用 jQuery 来定位以下内容:

<link rel="stylesheet" href="css/test.css">

我不知道如何设置默认路径(css文件夹)?

<button data-button="test">Just a Test</button>


<script>
var button = $('button'),
    link = $('link'),
    stylesheet = $(this).data('button');

    button.on('click', function() {
        console.log(this);
        link.attr('href', stylesheet + '.css');
});
</script>

现在,只有当 css 位于 root 中时,这才会在按钮单击时更改 css ... 那么我如何告诉他 CSS 默认路径位于“css/”。

试图寻找没有成功。

PS 一个与 JS 相关的问题,但与问题标题无关。

什么是更好和正确的:

var $something = $('#something');
or
var something = $('#something');
4

3 回答 3

5

就这么简单

link.attr('href', 'css/' + stylesheet + '.css');
于 2012-11-26T14:30:18.473 回答
4

如果要切换样式表,则应改用备用样式表

<link rel="alternate stylesheet" href="css/test1.css">
<link rel="alternate stylesheet" href="css/test2.css" disabled>

在 jQuery 中,您可以删除/添加disabled属性以切换样式表:

var links = $("link[rel='alternate stylesheet']");
var button = $("button");

button.on('click', function() {
    links.filter(":disabled").prop("disabled", false).siblings().prop("disabled", true);
});
于 2012-11-26T14:31:15.767 回答
3

为什么不简单地css/在代码本身中提及路径

link.attr('href', 'css/'+stylesheet + '.css');

要回答你的另一个问题,

var $something并且var something都是有效的变量名。你的选择。

于 2012-11-26T14:30:06.280 回答