2 回答

TA贡献1966条经验 获得超4个赞
由于您正在更改innerHTML(与innerText相对),因此您可以使用文本添加html标记。例如:
JS
button.addEventListener('click', () => changeText('whales', 'snails', '<small>this is the specific text that needs a different font-size</small>'));
button2.addEventListener('click', () => changeText('bees', 'trees', 'this text3 is ok with the actual font-size'));
CSS
#text>small {
font-size: 10px;
}
由于您在单击不同按钮时调用相同的功能,因此它们将具有相同的行为。因此,如果您想以编程方式执行此操作,则需要添加新函数或使用奇怪的逻辑使已经庞大的函数过度复杂化。
弹出的真正问题是:你为什么要这种行为?

TA贡献1836条经验 获得超4个赞
var text = document.getElementById('text');
function changeText(text1, text2, text3, button) {
// default behaviour
text.style.color = "red";
if (language == 1) text.innerHTML = text1;
else if (language == 2) text.innerHTML = text2;
else if (language == 3){
text.innerHTML = text3;
// different behaviour
if(button == "button1")
text.style.color = "green";
}
else text.innerHTML = "Don't think about this";
}
<button onclick="changeText('hello','banana','wow','button1');" id="button1">
<button onclick="changeText('vewewve','vdsvs','dgsag','button2');" id="button2">
每次单击按钮且语言不是3时,此代码将默认设置文本。
添加回答
举报