这样不能连续选择文字颜色和文字大小同时设置

动态 未结 0 82
小小草
小小草 LV1 2023年9月23日 23:40 发表
您是对的,上面的代码只能处理单个下拉菜单中的选项。如果您想要同时处理多个下拉菜单中的选项,可以考虑将两个函数合并成一个函数,并在函数中添加一些逻辑来处理不同的选项。 以下是一个示例代码,用于同时处理文字颜色和文字大小: ``` function applyStyle(styleType, styleValue) { const selection = window.getSelection(); if (selection.rangeCount > 0) { const range = selection.getRangeAt(0); const element = document.createElement(styleType); element.innerHTML = range.toString(); if (styleType === 'span') { element.style.color = styleValue; } else if (styleType.startsWith('h')) { element.setAttribute('class', `header-${styleValue}`); } range.deleteContents(); range.insertNode(element); selection.removeAllRanges(); selection.addRange(range); } } ``` 这个函数接受两个参数:`styleType`表示样式类型,可以是`span`或以`h`开头的标题类型;`styleValue`表示样式值,可以是颜色字符串或标题级别数字。 在函数内部,我们首先创建一个新元素,然后根据样式类型和样式值设置元素的属性。最后,我们将新元素插入到选区中,并重新设置选区范围。 使用此函数,您可以轻松地处理多个下拉菜单中的选项,例如: ``` // 处理文字颜色 applyStyle('span', 'red'); // 处理标题类型 applyStyle('h2', '2'); ``` 这样,您就可以同时处理文字颜色和文字大小了。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复