JavaScript实现选中文字变色:简单实用

4星 · 超过85%的资源 需积分: 46 53 下载量 56 浏览量 更新于2024-09-14 1 收藏 966B TXT 举报
本文档主要介绍了如何使用JavaScript实现选中文字点击后改变字体颜色的功能。在HTML和JavaScript代码中,作者提供了一个简单的示例来实现在可编辑区域(如`<div id="editor" contenteditable="true">`)内,用户点击按钮后,选中的文字颜色会变为红色(#FF0000)。以下是详细的知识点解析: 1. **HTML结构**: - 文档结构包含一个`<html>`标签,其中定义了文档的基本结构,包括头部和主体部分。 - 头部部分包含`<head>`标签,其中设置了文档标题`<title>newdocument</title>`,这将显示在浏览器的标签页上。 - `<script>`标签用于嵌入JavaScript代码,这里定义了一个名为`setColor`的函数,该函数将在用户点击按钮时被调用。 2. **JavaScript函数**: - `setColor()`函数是核心部分,它处理字体颜色的更改逻辑。 - 对于IE浏览器(document.all),函数首先通过`document.selection`获取选中的文本范围,并检查其父元素是否在id为"editor"的区域内。如果是,执行`execCommand("ForeColor", false, "#FF0000")`命令改变字体颜色。 - 对于非IE浏览器(如现代的Chrome、Firefox等),使用`window.getSelection()`获取选中的文本范围,并创建一个新的`<span>`元素,设置其`style.color`属性为红色。然后,通过`surroundContents`方法将选中的文本包裹在新创建的`<span>`元素中,实现了颜色的改变。 3. **可编辑区域**: - 在`<body>`部分,有一个具有`contenteditable`属性的`<div>`元素,这意味着用户可以直接在这个区域内输入和编辑文字。这个区域是改变字体颜色功能生效的地方。 4. **按钮触发**: - 文档末尾有一个`<input>`元素,类型为`button`,它的`onclick`事件绑定了`setColor()`函数。当用户点击这个按钮时,`setColor()`函数会被调用,从而改变选中文字的颜色。 总结来说,这段代码演示了如何使用JavaScript结合HTML实现一个简单的文本编辑器,允许用户在特定区域内点击并实时改变选中的文字颜色。这对于网页编辑应用或需要实时反馈效果的场景非常实用。