javascript - 如何检查字母是否为粗体?

标签 javascript html css

我正在尝试将所有粗体字符更改为斜体字符,反之亦然。我发现我需要遍历整个文档。

至此我定义了两个样式和部分函数,​​不确定是否需要样式。

        .bold {
            font-weight: bold;
        }
        .italic {
            font-style: italic;
        }

        <script>
        function swap() {
            if (fontWeight == 'bold') {
                fontWeight == 'normal';
                fontStyle == 'italic';
            }
            elseif (fontStyle == 'italic') {
                fontStyle == 'normal';
                fontWeight == 'bold';
            }
        </script>

最佳答案

好吧,您可以使用 querySelectorAll 来做到这一点,考虑仅交换 .bold.italic,具体取决于它们当前的类:

function swapCollection( collection, from, to ) {
  if ( !collection ) {
    return;
  }
  
  for( let i = 0; i < collection.length; ++i ) {
    const elm = collection[ i ];
    elm.classList.remove( from );
    elm.classList.add( to );
  }
}

function swap() {
  const allBold = document.querySelectorAll( '.bold' );
  const allItalic = document.querySelectorAll( '.italic' );
  
  swapCollection( allBold, 'bold', 'italic' );
  swapCollection( allItalic, 'italic', 'bold' );
}

document.getElementById( 'swap' ).addEventListener( 'click', swap );
.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}
<div>
  <span class="bold">Hello</span> <span class="italic">world!</span>
</div>

<button id="swap">swap</button>

关于javascript - 如何检查字母是否为粗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46406406/

相关文章:

html - 具有背景+填充的响应图像

javascript - 如何在javascript中获取具有两个具有相同id的文本框的asp.net用户控件的值

javascript - 使提示框创建警报

javascript - 谷歌地图灰色 map

用于服务器端验证的 javascript 事务日志

html - Bootstrap 。为什么 div 没有响应?

html - 高度 100 百分比背景不起作用?

javascript - 新的 AjaxUpload 只接受来自按钮标签的图像

javascript - 使用简单反射代理的流行 'vaccumCleaner' 玩具问题解决方案

javascript - django-jquery 日期时间选择器无法保存所选日期的表单