You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过JS DOM修改鼠标悬停时变量显示文本的颜色?

鼠标悬停修改文本颜色实现方案

你现有代码已经完成了DOM元素绑定、文本渲染和事件绑定逻辑,只需要补全对应的两个事件处理函数即可,以下是具体实现:

方案1:纯CSS实现(无额外JS代码,最推荐)

如果仅需修改悬停样式不需要执行其他JS逻辑,直接用CSS伪类即可,不用写JS函数,还可以删掉HTML标签上的onmouseover和onmouseout属性:

.text_user_info:hover {
  /* 自定义悬停颜色 */
  color: #ff0000;
}

方案2:JS操作样式实现

如果你需要在悬停时同时执行其他JS逻辑,用以下写法即可:

完整JS代码

var userName = "Hamdy"
var userNamef = userName.bold()
const welcome = "Hello,  "
// 提前获取DOM元素,避免多次查询
const textDom = document.getElementById("tui")

// 渲染初始文本
textDom.innerHTML = welcome + userNamef;

// 鼠标悬停触发函数
function hoverText() {
  textDom.style.color = "#ff0000";
}

// 鼠标移出触发函数
function noHoverText() {
  // 恢复为默认文本颜色
  textDom.style.color = "#000000";
}

方案3:JS加CSS类控制(易扩展)

如果后续可能新增更多悬停样式(如下划线、背景色等),推荐用切换CSS类的方式实现,后续修改样式不用调整JS逻辑:

  1. 先加CSS样式:
.text--hover {
  color: #ff0000;
  text-decoration: underline;
}
  1. 对应JS代码:
var userName = "Hamdy"
var userNamef = userName.bold()
const welcome = "Hello,  "
const textDom = document.getElementById("tui")

textDom.innerHTML = welcome + userNamef;

function hoverText() {
  textDom.classList.add("text--hover");
}

function noHoverText() {
  textDom.classList.remove("text--hover");
}

内容的提问来源于stack exchange,提问作者Hamdysaad20

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:45:03