gpt4 book ai didi

javascript - 使用 JavaScript 更改字体大小

转载 作者:行者123 更新时间:2023-11-28 16:04:32 24 4
gpt4 key购买 nike

我有这段代码可以用 3 个按钮更改段落的字体大小。我想知道我可以使用哪种方法来不重复相同的行并使代码更紧凑。

window.addEventListener('load', inicio, false);

function inicio(){
var boton1 = document.getElementById('boton1');
var boton2 = document.getElementById('boton2');
var boton3 = document.getElementById('boton3');

boton1.addEventListener('click', fuente10, false);
boton2.addEventListener('click', fuente13, false);
boton3.addEventListener('click', fuente20, false);
}

function fuente10(){
var parrafo = document.getElementById('parrafo');
parrafo.style.fontSize='10px'
}

function fuente13(){
var parrafo = document.getElementById('parrafo');
parrafo.style.fontSize='13px'
}

function fuente20(){
var parrafo = document.getElementById('parrafo');
parrafo.style.fontSize='20px'
}

我在 for 循环中思考,但我不知道该怎么做:/

最佳答案

尝试这样的事情

window.addEventListener('load', inicio, false);

function inicio(){
var boton1 = document.getElementById('boton1');
var boton2 = document.getElementById('boton2');
var boton3 = document.getElementById('boton3');

boton1.addEventListener('click', function() { setFont("10px");}, false);
boton2.addEventListener('click', function() { setFont("13px");}, false);
boton3.addEventListener('click', function() { setFont("20px");}, false);
}

function setFont(value){
var parrafo = document.getElementById('parrafo');
parrafo.style.fontSize= value;
}

更新不同的方法(未经测试,但应该可行)

    window.addEventListener('load', inicio, false);
function inicio() {
var fontDetails = {"boton1" : "10px" , "boton2" : "13px" , "boton3" : "20px"};
var parrafo = document.getElementById('parrafo');
var domElement = "";
var element = "";

for (element in fontDetails)
{
domElement = document.getElementById(element);
domElement.addEventListener('click', function() { parrafo.style.fontSize= fontDetails[element]; }, false);
}
}

您还可以删除窗口加载事件处理程序和函数 inicio 并尝试像这样的自执行函数

(function() { //your code here } )();

关于javascript - 使用 JavaScript 更改字体大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15629926/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com