首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >切换更改css选择器

问切换更改css选择器
EN

Stack Overflow用户
提问于 2014-04-01 21:19:17
回答 2查看 84关注 0票数 0

我试图不改变一个段落的id属性的按钮点击。第一部分起作用。但是当按钮再次被点击时,应该恢复到原来的样式。新的与JavaScript,所以任何其他有帮助的文章将是很好的。

下面是css:

代码语言:javascript
复制
    <style type="text/css">
    #attention
    {
        font-size:24px;
        background-color:yellow;
        width:300px;
    }
    #normal
    {
        background-color:white;
        font-size:12px;
    }
</style>

JS

代码语言:javascript
复制
        function changeText() {
        var text = document.getElementById("textChange");
        text.innerHTML = "New Text";
        text.id = "attention";
    }

HTML

代码语言:javascript
复制
    <div>
    <p id="textChange">Some generic text here</p>
    <input id="Button1" type="button" value="Do Something" onclick="changeText();" />
</div>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-01 21:26:48

  • 首先,不要更改元素的ID。
  • 切换一个类。
  • 不要使用内联事件属性。而是使用DOM3侦听器。

CSS

代码语言:javascript
复制
<style type="text/css">
    .attention
    {
        font-size:24px;
        background-color:yellow;
        width:300px;
    }
    .normal
    {
        background-color:white;
        font-size:12px;
    }
</style>

代码语言:javascript
复制
 <div>
    <p id="textChange">Some generic text here</p>
    <input id="Button1" type="button" value="Do Something" />
</div>

JS

代码语言:javascript
复制
var btn = document.getElementById('Button1');

btn.addEventListener('click', function() {
   var div = document.getElementById('textChange');

   div.className = 'attention';
});
票数 0
EN

Stack Overflow用户

发布于 2014-04-01 21:22:49

您应该为这类功能使用类。例如:

代码语言:javascript
复制
function changeText() {
    var text = document.getElementById("textChange");
    text.innerHTML = "New Text";
    text.className = text.className == "attention" ? 'normal' : 'attention';
}

因此CSS变成:

代码语言:javascript
复制
.attention {
    font-size:24px;
    background-color:yellow;
    width:300px;
}
.normal {
    background-color:white;
    font-size:12px;
}

演示:http://jsfiddle.net/5yx44/

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

https://stackoverflow.com/questions/22797087

复制
相关文章

相似问题

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