javascript - html element.style.color 问题

标签 javascript html colors coding-style

我正在编写一些 javascript 代码来使一些文本闪烁,但它不会工作。

        function start_blink(elementId) {
            //var red = "#ff0000";
            //var white = "#000000";
            var element = document.getElementById(elementId);
            element.style.color == 'red';
            if(document.getElementById) {
                element.style.color = (element.style.color == 'red') ? 'white' : 'red';
                //document.write(element.style.color);
                blinkIntervalID = setInterval(start_blink, 1000, elementId);
            }
        }

它只会变红,不会变白,这意味着 element.style.color == 'red' 总是返回 false。
为什么会这样?

最佳答案

首先这是错误的:

element.style.color == 'red'

应该只是“=”。正如您所写的那样,这将被评估为相等性测试,返回 true 或 false。

此外,检查 element.style.color 实际返回的内容,它可能不是“红色”或“白色”,而是 rgbhex 代码并且可能依赖于浏览器。

第三,您对 setInterval 的使用是错误的。参见 here有关如何使用它的详细信息。你可能是说 setTimeout :

setTimeout(function() { start_blink(elementId); }, 1000);

关于javascript - html element.style.color 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7077939/

相关文章:

java - 在 Java 中自定义默认的 AbstractColorChooserPanel

java - 仅使用一种颜色生成渐变

javascript - RecordRTC视频上传AmazonS3超时报错

javascript - 我想了解 jQuery 插件语法

javascript - 服务器无法识别 REST 服务中客户端的获取请求

javascript - 简单的 jquery 幻灯片修复我无法弄清楚

c# - 双线性插值配色方案

javascript - 在 Javascript 中进行换行的合适方法是什么

javascript - 如何在创建选项时更改选项的背景图像?

c# - HtmlAgilityPack 无效标记