javascript - 使用 Javascript 更改站点范围内刷新时某些元素的字体

标签 javascript fonts

正如标题所示,我正在尝试在整个网站上随机化我的 h1 标题的字体。所有这些都使用 php count 分配一个单独的 ID,因此它们采用以下格式:project-title-1、project-title-2 等。

我根据我在此处找到的类似问题重新调整了此代码的用途,但尝试应用它,以便它适用于多个元素。

目前,如果我从 querySelector 中删除 All,它会在页面上的第一个元素上运行,但不会在其他元素上运行,因此代码可以运行,但在某处存在问题。

任何见解将不胜感激!干杯

var fonts = ['hauser', 'helvetica', 'times'];
var rand = fonts[Math.floor(Math.random() * fonts.length)];
console.log(rand);

var bodyElement = document.querySelectorAll("[id^='project-title']");
bodyElement.className = rand;

这里的基本工作示例: https://jsfiddle.net/psvu78aq/2/

最佳答案

理想的方法是将类应用于父元素,以便它应用于其所有子元素。

但是,为了修复您的代码,以下内容应该有效:

var bodyElement = document.querySelectorAll("[id^='project-title']");
bodyElement.forEach(elem => elem.classList.add(rand));

原因是(正如您所知),document.querySelectorAll 返回一个元素集合。因此,您需要仔细检查每个内容,然后单独应用该类。

关于javascript - 使用 Javascript 更改站点范围内刷新时某些元素的字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51669603/

相关文章:

javascript - 错误 : Syntax error, 无法识别的表达式:#jquery

php - 使用ajax将数据发送到php时出现“不允许发布方法”错误

JavaScript 减少有/没有初始值的行为

css - Google Fonts - 可变字体在 Windows 浏览器中不起作用

CSS如何自动改变某些字符的字体颜色?

r - 在 cairo_pdf 中设置粗体样式

Javascript 在 HTML 文件中有效,但在 Javascript 文件中无效

java - 使用我的 JAR 中的字体

html - 使用渲染本地字体而不是@import 的网页

javascript - 将 JSON 信息获取到 Material-UI 对话框