如何使用 JavaScript 设置文本的字体系列?
在本教程中,我们将学习如何使用 JavaScript 设置文本的字体系列。
font-family 是一个 CSS 属性,它指定一个优先级列表,其中包含一个或多个字体系列名称和 HTML 元素文本的通用系列名称。要使用 JavaScript 设置文本的字体系列,有多种方法,在本教程中,我们将讨论其中两种:
使用 style.fontFamily 属性
使用 style.setProperty 方法
使用 style.fontFamily 属性
style.fontFamily 属性设置文本的字体系列名称和/或通用系列名称列表。浏览器将设置列表中它识别的第一个值。元素对象包含此属性,因此首先,使用 document.getElementById() 方法访问元素对象,然后我们使用 style.fontFamily 属性来使用 JavaScript 设置文本的字体系列。
语法
const element = document.getElementById('id') element.style.fontFamily = family_name | generic_family | inherit | initial
在上面的语法中,“id”是元素的 id。我们使用 document.getElementById() 方法访问该元素对象并设置 style.fontFamily 属性。
参数
family_name − 一个或多个字体系列的名称。
generic_family − 一个或多个通用系列的名称。
inherit − 字体系列属性由其父元素的属性继承。
initial − 字体系列属性设置为默认值。
示例
在下面的示例中,我们使用了 style.fontFamily 属性来使用 JavaScript 设置文本的字体系列。我们使用了一个“设置字体系列”按钮的点击事件来执行“setFontFamily()”函数,该函数设置多个元素的 font-family 属性。
<html> <head> <style> div { padding: 10px; margin: 5px 0px; background-color: aliceblue; } </style> </head> <body> <h3> Set the font family for text using <i> style.fontFamily property </i> with JavaScript </h3> <button onclick="setFontFamily()"> Set Font Family </button> <br /><br /> <div id="text1"> This text will use Arial font family </div> <div id="text2"> This text will use cursive font family </div> <div id="text3"> This text will use Helvetica, sans-serif font family </div> <div id="text4"> This text will use Georgia, serif font family </div> <script> // 'Set Font Family' button click event handler function function setFontFamily() { // all text elements const text1 = document.getElementById('text1') const text2 = document.getElementById('text2') const text3 = document.getElementById('text3') const text4 = document.getElementById('text4') // Set the font-family property using the style.fontFamily property text1.style.fontFamily = 'Arial' text2.style.fontFamily = 'cursive' text3.style.fontFamily = 'Helvetica, sans-serif' text4.style.fontFamily = 'Georgia, serif' } </script> </body> </html>
使用 style.setProperty 方法
在 JavaScript 中,可以使用 style.setProperty 方法设置 HTML 元素的新属性或现有属性。style.setProperty 方法是元素对象的一部分,因此要使用此方法,我们需要使用 document.getElementById() 方法访问元素对象,然后才能使用此方法。在 style.setProperty 方法的属性名称参数中,它应该是“font-family”,值和优先级将根据用户而定。
语法
const element = document.getElementById('id') element.style.setProperty(property_name, value, priority)
在上面的语法中,我们使用 document.getElementById() 方法访问具有 id 为“id”的 HTML 元素的元素对象,然后使用 style.setProperty 方法。
参数
property_name − 要设置的属性的名称。
value − 属性的新值。
priority − 属性值的优先级(可选)。
示例
在下面的示例中,我们使用了 style.setProperty 方法来使用 JavaScript 设置文本的字体系列。我们使用了一个输入字段来获取用户的字体系列列表输入。一个“设置字体系列”按钮与一个点击事件相关联,该事件执行“setFontFamily()”函数,该函数设置元素的字体系列。
<html> <head> <style> div { padding: 10px; margin: 5px 0px; background-color: aliceblue; } </style> </head> <body> <h2> Set the font family for text using <i> style.setProperty method </i> with JavaScript </h2> <h4>Enter the list of font-families to set:</h4> <input id="fonts" type="text" name="fonts" value="sans-serif"> <button onclick="setFontFamily()"> Set Font Family </button> <br /><br /> <div id="text"> This text will change it's font family according to the user's input! </div> <script> // 'Set Font Family' button click event handler function function setFontFamily() { const text = document.getElementById('text') // input field's value const fonts = document.getElementById('fonts').value // Set the font-family property using the style.setProperty method text.style.setProperty('font-family', fonts) } </script> </body> </html>
在本教程中,我们学习了如何使用 JavaScript 设置文本的字体系列。我们已经看到了两种设置字体系列的方法:使用 style.fontFamily 属性和使用 style.setProperty 方法。用户可以遵循这些方法来设置文本的字体系列。