使textarea文本加粗的按钮

时间:2013-05-19 07:45:17

标签: javascript jquery

我有一个onclick="bold()"按钮,它应该将字体粗细从正常更改为粗体,然后再恢复正常。它没有做任何事情。我需要更改或添加什么?如果有帮助,这是一个jsfiddle:http://jsfiddle.net/dZVfh/

<script>
    var x = document.getElementById('description-box');
    function bold() {
      if( $(x).css("font-weight") == "normal") {
        $(x).css("font-weight"), "bold");
      }
      else {
        $(x).css("font-weight", "normal");
      }
    }
  </script>

2 个答案:

答案 0 :(得分:3)

您的代码中存在语法错误:

更改

$(x).css("font-weight"), "bold");

$(x).css("font-weight", "bold");


全功能

function bold() {
    var x = $('#description-box');
    if (x.css("font-weight") !== "bold") {
        x.css("font-weight", "bold");
    } else {
        x.css("font-weight", "normal");
    }
}

工作小提琴http://jsfiddle.net/dZVfh/3/

你原来的小提琴有很多问题。

  • jQuery未被收录

  • 该功能在domReady内定义 - 这意味着单击按钮时不可见

  • CSS块出现语法错误。该样式使用)而不是}

  • 关闭
  • 您尝试在DOM准备好之前将元素分配给x。新的小提琴在函数内部执行此操作(此时DOM已准备就绪)

答案 1 :(得分:3)

我更喜欢让它改变班级:

添加此样式

.bold{
    font-weight: bold;
}

改变你的职能:

function bold(){
  if( $(x).hasClass("bold")) {
     $(x).removeClass("bold");
  }
  else {
    $(x).addClass("bold");
  }
}