用jQuery定位链接href =“”

时间:2012-11-26 14:26:15

标签: javascript jquery

我试图用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,如果css在root中...那我怎么告诉他CSS默认路径在“css /".

试图找不到成功。

P.S。一个问题归结为JS而不是问题。

更有利和更正:

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

3 个答案:

答案 0 :(得分:5)

这很简单

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

答案 1 :(得分:4)

如果要切换样式表,则应使用alternate stylesheets代替。

<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);
});

答案 2 :(得分:3)

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

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

要回答您的其他问题,

var $somethingvar something都是有效的变量名称。你的选择。