twitter-bootstrap – 如何在单击主题的下拉菜单后动态更改主题

我正在使用bootstrap作为我正在开发的网站的界面。我也打算将bootswatch主题整合到我的网站。我创建了一个包含bootswatch不同主题的下拉菜单。我的问题是当我点击下拉菜单中的一个主题时如何切换主题

解决方法

小提琴: http://jsfiddle.net/82AsF/(点击导航栏中的主题下拉列表)为您的链接提供类主题链接主题名称的数据主题值,如下所示:
<a href="#" data-theme="amelia" class="theme-link">Amelia</a>

然后,在如下所示的全局变量中定义您的主题

var themes = {
    "default": "//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css","amelia" : "//bootswatch.com/amelia/bootstrap.min.css","cerulean" : "//bootswatch.com/cerulean/bootstrap.min.css","cosmo" : "//bootswatch.com/cosmo/bootstrap.min.css","cyborg" : "//bootswatch.com/cyborg/bootstrap.min.css","flatly" : "//bootswatch.com/flatly/bootstrap.min.css","journal" : "//bootswatch.com/journal/bootstrap.min.css","readable" : "//bootswatch.com/readable/bootstrap.min.css","simplex" : "//bootswatch.com/simplex/bootstrap.min.css","slate" : "//bootswatch.com/slate/bootstrap.min.css","spacelab" : "//bootswatch.com/spacelab/bootstrap.min.css","united" : "//bootswatch.com/united/bootstrap.min.css"
}

(请务必在您自己的服务器上托管这些bootswatch css文件 – 我只是热链接,因为我手上没有服务器)
然后,使用以下jQuery代码

$(function(){
   var themesheet = $('<link href="'+themes['default']+'" rel="stylesheet" />');
    themesheet.appendTo('head');
    $('.theme-link').click(function(){
       var themeurl = themes[$(this).attr('data-theme')]; 
        themesheet.attr('href',themeurl);
    });
});

相关文章

Bootstrip HTML 查询搜索常用格式模版 &lt;form class=&...
如何在按钮上加红色数字 您可以使用Bootstrap的badge组件来在...
要让两个按钮左右排列,你可以使用 Bootstrap 的网格系统将它...
是的,可以将status设置为布尔类型,这样可以在前端使用复选...
前端工程师一般用的是Bootstrap的框架而不是样式,样式一般自...
起步导入:<linkrel="stylesheet"href="b...