Javascript 背景色不';不处理动态插入的元素
我正在尝试为MathJax方程的特定部分设置一个浮动div标签。 这就是为什么我必须在代码中动态插入描述标签的HTML元素,因为我要在其中插入代码的元素是在运行时生成的 我能够找到零件并添加浮动div作为标签,问题是由于某种原因我无法更改背景颜色 我尝试了很多不同的方法(“在css文件中插入它,在插入元素时使用样式,稍后通过js添加它”)和css标记(“背景”、“背景色”)。样式显示在元素中 但是背景色不会改变Javascript 背景色不';不处理动态插入的元素,javascript,css,background-color,mathjax,Javascript,Css,Background Color,Mathjax,我正在尝试为MathJax方程的特定部分设置一个浮动div标签。 这就是为什么我必须在代码中动态插入描述标签的HTML元素,因为我要在其中插入代码的元素是在运行时生成的 我能够找到零件并添加浮动div作为标签,问题是由于某种原因我无法更改背景颜色 我尝试了很多不同的方法(“在css文件中插入它,在插入元素时使用样式,稍后通过js添加它”)和css标记(“背景”、“背景色”)。样式显示在元素中 但是背景色不会改变 let els=document.getElementById(“id”).get
let els=document.getElementById(“id”).getElementsByClassName(“mjx-mstyle”)
for(设i=0;i=0){
(els[i]).setAttribute(“样式”,“颜色:rgb(206,15,33)”;背景色:海军蓝;位置:相对”);
(els[i]).innerHTML+=
“这是我的文本”——;
(els[i]).setAttribute(“onmouseover”、“document.getElementById('message1')).style.display='block');
(els[i]).setAttribute(“onmouseout”、“document.getElementById('message1')).style.display='none');
}
更新:
可以在这里找到小提琴。消息隐藏在“x”下。它将出现在鼠标上方
谢谢您的帮助。您的代码外部div的高度为零,请为div设置高度,否则您也可以将溢出设置为隐藏已解决: 问题是,div从MathJax的某些部分继承了0px的高度。
文本溢出,因此可见,但div的其余部分由于其体积为零而不可见。使用
!important
:背景色:navy!important;
请共享html编码。如果在此处创建小提琴或代码片段,则很难看到没有(非)的情况下发生了什么-工作版本I添加了一个提琴,消息隐藏在“x”下。它将显示在鼠标上。不幸的是,没有差异。我添加了一个提琴。消息隐藏在“x”下。它将显示在鼠标上。如果代码外部div呈现零高度,请为div设置高度,否则还可以将溢出设置为隐藏。
let els = document.getElementById("id").getElementsByClassName("mjx-mstyle")
for(let i = 0; i < els.length; i++){
if(window.getComputedStyle(els[i]).color.indexOf("rgb(206, 15, 33)") >= 0 ){
(els[i]).setAttribute("style", "color: rgb(206, 15, 33); background-color: navy; position: relative");
(els[i]).innerHTML +=
'<div id="message1" style="position: absolute; top: -10px; width: 100px; color: black; background-color: black">This is my text</div>' -;
(els[i]).setAttribute("onmouseover", "document.getElementById('message1').style.display = 'block'");
(els[i]).setAttribute("onmouseout", "document.getElementById('message1').style.display = 'none'");
}