Javascript 如何使用jquery动态切换样式表?

Javascript 如何使用jquery动态切换样式表?,javascript,html,css,jquery-ui,Javascript,Html,Css,Jquery Ui,嗨,我有一个页面,我有四个不同的样式表,像这样 <link rel="Stylesheet" href="fancydropdown.css" title="style-1" type="text/css" /> <link rel="Alternate" href="fancydropdown_1.css" title="style-2" type="text/css" /> <link rel="Alternate" hre

嗨,我有一个页面,我有四个不同的样式表,像这样

      <link rel="Stylesheet" href="fancydropdown.css"  title="style-1" type="text/css" />
      <link rel="Alternate" href="fancydropdown_1.css" title="style-2" type="text/css" />
      <link rel="Alternate" href="fancydropdown_2.css" title="style-3" type="text/css" />
      <link rel="Alternate" href="fancydropdown_3.css" title="style-4" type="text/css" />

这是我的HTML

    <div id="menu">
    <ul class="tabs">
<li><h4><a href="#">In the blog &raquo;</a></h4></li>
<li class="hasmore"><a href="#"><span>Styles</span></a>
    <ul class="dropdown">
        <li><a   href="#" rel="style-1">style-1</a></li>
        <li><a   href="#"  rel="style-2">style-2</a></li>
        <li><a   href="#" rel="style-3">style-3</a></li>
        <li><a   href="#" rel="style-4">style-4</a></li>            
        <li class="last"><a href="#">Menu item 6</a></li>
    </ul>
</li>
<li class="hasmore"><a href="#"><span>Topics</span></a>
    <ul class="dropdown">
        <li><a href="#">Topic 1</a></li>
        <li><a href="#">Topic 2</a></li>
        <li><a href="#">Topic 3</a></li>
        <li class="last"><a href="#">Topic 4</a></li>
    </ul>
</li>   
<li><h4><a href="#">Elsewhere &raquo;</a></h4></li>
<li><a href="#"><span>About</span></a></li>
<li class="hasmore"><a href="#"><span>Networks</span></a>
    <ul class="dropdown">
        <li><a href="#">Twitter</a></li>
        <li><a href="#">posterous</a></li>
        <li><a href="#">SpeakerSite</a></li>
        <li><a href="#">LinkedIn</a></li>
        <li class="last"><a href="#">See more&hellip;</a></li>
    </ul>
</li>
<li><a href="#"><span>Bookmarks</span></a></li>

这是我的速成班

     <ul class="dropdown">
        <li><a   href="#" rel="style-1">style-1</a></li>
        <li><a   href="#"  rel="style-2">style-2</a></li>
        <li><a   href="#" rel="style-3">style-3</a></li>
        <li><a   href="#" rel="style-4">style-4</a></li>            
        <li class="last"><a href="#">Menu item 6</a></li>
    </ul>
当我点击style-1等时,样式表应该被更改……我如何使用jquery来实现这一点?有人能帮我吗


请提供我要使用的库?

您只需更改样式表的HREF即可

... HEAD
<link rel="Stylesheet" href="style1.css" >

... BODY
<ul class="dropdown">
    <li><a data-stylesheet="style1.css">style 1</a></li>
    <li><a data-stylesheet="style2.css">style 2</a></li>
    <li><a data-stylesheet="style3.css">style 3</a></li>
</ul>

... SCRIPT
$('.dropdown a').click(function(ev){
    ev.preventDefault();
    $('link').attr('href',$(this).data('stylesheet'));
});
。。。头
... 身体
  • 风格1
  • 风格2
  • 风格3
... 剧本 $('.下拉列表a')。单击(函数(ev){ ev.preventDefault(); $('link').attr('href',$(this.data('stylesheet')); });
请尝试以下方法,效果良好。请看这里的演示

$(“.dropdown a”)。单击(函数(){ var thisRel=$(this.attr('rel'); //警报(thisRel); $(“link[rel='stylesheet']”)attr('href',thisRel); })​
一个简单的谷歌搜索就足够了。我尝试了几个例子,但没有成功。样式表没有改变-@machineaddict您检查过javascript错误吗?您应该使用firebuganil kumar切换样式表的原因是什么?浏览器兼容性/verson/屏幕大小?有很多简单的选择。只需制作一个样式表并更改href。设置样式表的方式很奇怪。我将改变我的答案,向您展示更好的方式。数据——任何东西在html5中都是有效的,这就是数据元素的美
<ul class="dropdown">
            <li><a   href="#" rel="style-1.css">style-1</a></li>
            <li><a   href="#"  rel="style-2.css">style-2</a></li>
            <li><a   href="#" rel="style-3.css">style-3</a></li>
            <li><a   href="#" rel="style-4.css">style-4</a></li>            
            <li class="last"><a href="#">Menu item 6</a></li>
        </ul>

$(".dropdown a").click(function() {
    var thisRel = $(this).attr('rel');
    //alert(thisRel);
    $("link[rel='stylesheet']").attr('href', thisRel);
})​