0

http://jsbin.com/EzaKuXE/1/edit

我一直在尝试将主题从默认更改为钴等,每次单击按钮时都会切换它,但它会切换到主题一次,并且不会切换回来。因此,我为什么在这里。任何人都可以帮助指导正确的方向吗?这个简单的任务越来越烦人。

我已经用 .(dot) 替换了代码中不相关的部分

HTML

<link rel="stylesheet" href=http://codemirror.net/doc/docs.css>
.
. 
<link rel="stylesheet" href="http://codemirror.net/theme/3024-night.css">
.
.
<link rel="stylesheet" href="http://codemirror.net/theme/neat.css">
</head>
<body>
  <textarea id=code name=code>
    .
    .
    <iframe id=preview></iframe>

    <p>Select a theme: <select onchange="selectTheme()" id=select>
        <option value="0" selected>default</option>
        .
            .
        <option>night</option>
    </select></p>

  <button id="changetheme" style="margin-top: -35px; float: right;">Cobalt</button>
</body>
</html>

Javascript

// Initialize CodeMirror editor with a nice html5 canvas demo.
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
    lineNumbers: true,
    styleActiveLine: true,
    matchBrackets: true
});

// Sets the theme
var input = document.getElementById("select");

function selectTheme() {
    var theme = input.options[input.selectedIndex].innerHTML;
    editor.setOption("theme", theme);
}

$(function() {
    $('#changetheme').click(themechange);

    function themechange() {
        if (
            $("#select").val(0)) {
            $("#select").val(7).trigger('change');
        }
        else if (
            $("#select").val(7)) {
            $("#select").val(0).trigger('change');
        }
    }
});
4

1 回答 1

1

要使用 jQuery 切换内容,请使用 toggleClass() 函数。

http://api.jquery.com/toggleClass/

$(element).toggleClass("className");
于 2013-09-01T17:51:48.067 回答