首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用<button>在两个CSS文档之间切换

如何使用<button>在两个CSS文档之间切换
EN

Stack Overflow用户
提问于 2019-04-11 20:43:13
回答 2查看 523关注 0票数 3

我试着在我的网页上使用深色主题和浅色主题,但我找不到一种只用一个按钮来切换它们的方法(所以第一次点击按钮就会打开深色主题,第二次就会关闭它)。我更希望能够在不使用第三方JavaScript库的情况下做到这一点。我已经找到了一种使用<option>元素来实现这一点的方法,但这不是我想要的“切换按钮”:

代码语言:javascript
复制
  <button onclick=getTheme() id=themeToggle>Click to use this theme.</button>
    <select id="select">
        <option>Dark Theme</option>
        <option>Revert To Original</option>
    </select>

代码语言:javascript
复制
function getTheme () {
    function changeTheme (Theme) {
        document.getElementById('style').setAttribute('href', Theme);
    }
    var index = document.getElementById("select").selectedIndex;
    switch (index) {
        case 0:
          changeTheme('css/dark.css');
          break;
          case 1: changeTheme('css/main.css');
    }
}

谢谢你的帮忙!

EN

回答 2

Stack Overflow用户

发布于 2019-04-11 20:50:35

我知道这看起来有点业余,但你可以做这样的事情,

代码语言:javascript
复制
<button onclick=getTheme() id=themeToggle>Click to use this theme.</button>
<script>
var click = 0;
function getTheme()
{   
    click++;
    if(click%2 == 0)
        changeTheme('css/dark.css');
    else
        changeTheme('css/main.css');
}
</script>

并相应地更改按钮上的文本。如果它起作用了,请告诉我。

票数 2
EN

Stack Overflow用户

发布于 2019-04-11 21:06:54

一种简单的方法是:

HTML

代码语言:javascript
复制
<input type="button" value="Dark" id="button" onclick=getTheme()></input> 

JavaScript

代码语言:javascript
复制
function getTheme () {
  var button = document.getElementById("button");
    if(button.value === "Dark") {
      button.value = "Revert To Original";
    } else {
      button.value = "Dark";
    }
}

在if/else中,您可以将更改主题函数放入其中。

https://codepen.io/anon/pen/xedzVz?editors=1111

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55632813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档