微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

原文地址:https://www.jb51.cc/bootstrap/234295.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐