javascript - 从 css 调用 <a> 标签到 javascript 函数

标签 javascript function hyperlink tags call

我正在使用 this changing color script通过 j08691:

function flash() {
var text = document.getElementById('foo');
text.style.color = (text.style.color=='red') ? 'green':'red';
}
var clr = setInterval(flash, 1000);

我想调用<body>标记和 <a>来自 CSS 的标签不是 id。

对于 <body>标记我这样做并且有效:

function flash() {
var text = document.body;
text.style.color = (text.style.color=='black') ? 'white':'black';
}
var clr = setInterval(flash, 1);

但它不适用于 <a>标签。我尝试了以下变体:

var els = document.getElementsByTagName('a');
var links = document.getElementsByTagName('a');

代替 var text = document.getElementById('a');并替换 text.style.colorlinks[i].style.colorlinks.style.color但我不太确定我在那里做什么。

我想一次性更改所有链接的颜色。

最佳答案

您走在正确的轨道上 - getElementsByTagName 返回一个集合,因此只需循环遍历该集合:

function flash() {
    var links = document.getElementsByTagName('a');
    for (var i = 0; i < links.length; i++) {
      links[i].style.color = (links[i].style.color=='black') ? 'white':'black';
    }
}
setInterval(flash, 1000);

jsFiddle here

另请注意,setInterval 需要几毫秒,因此不建议使用 setInterval(x, 1)

关于javascript - 从 css 调用 <a> 标签到 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673953/

相关文章:

javascript - 纯JS跨源iframe内的视差效果?

C++: vector 的子 vector 作为函数的参数

javascript - 运行后禁用 JavaScript 函数

java - 通过 Java 处理字符串并用工作链接替换所有 URL

css - 如何在五个主要浏览器中保持一致的单独文件上的 CSS 中为同一页面上的链接创建不同的颜色/规则?

javascript - 将自己的值设置为 ng-options 并检查第一个

javascript - JS鼠标悬停,悬停

javascript - 打字(影子打字)

vba - 循环添加引用正确单元格坐标但在错误工作表上的超链接

c++ - 将函数引用添加到列表