【问题标题】:JAVASCRIPT - if last character is : (colon), change font weightJAVASCRIPT - 如果最后一个字符是 :(冒号),则更改字体粗细
【发布时间】:2013-05-18 16:38:08
【问题描述】:

如果最后一个字符在 JavaScript 中是冒号,是否可以更改字体粗细?

我有网站,人们可以在其中添加食谱。我想强调食谱的部分成分。例如:

浇头: -巧克力 -牛奶 填充: -... -...

我搜索了一下,发现代码:

最后一个字符

if (myString.charAt(myString.length - 1) == ':') 

体重变化

function changeWeight(600)
{

document.getElementById("id_1").style.fontWeight = fontWeight;

}

我不知道如何编写代码来工作。我是初学者。

非常感谢。

【问题讨论】:

  • “有可能吗” - 是的。至于如何,你已经拥有它(只是多一点努力)。只需合并两个代码。

标签: javascript fonts


【解决方案1】:

您似乎想使特定文本变为粗体,而不是元素中的所有文本。您需要从元素中取出文本,对其进行更改,然后将其放回原处。

您可以使用这样的代码,但在以冒号结尾的元素中的所有单词周围加上一个粗体标记:

var element = document.getElementById("id_1");
var text = element.innerHTML;

text = text.replace(/([A-Za-z]+:)/g, '<strong>$1</strong>');

element.innerHTML = text;

注意:为了使其正常工作,您不能在实际标记中包含带有冒号的单词的元素中包含其他 HTML 元素。例如,我在代码中有&lt;a href="http://stackoverflow.com"&gt;SO&lt;/a&gt;,它会因为链接中的http: 而中断。

如果你在一个元素中只有那个单词,你会得到文本并检查冒号:

var element = document.getElementById("id_1");
var text = element.innerHTML;

if (text.charAt(text.length - 1)) == ':') {
  element.style.fontWeight = 'bold';
}

【讨论】:

    【解决方案2】:

    试试这个

    if (myString.charAt(myString.length - 1) == ':') {
        changeWeight("600");
    }
    
    function changeWeight(weight) {
        document.getElementById("id_1").style.fontWeight = weight;
    }
    

    【讨论】:

    • 另外,我强烈建议您将if (myString.charAt(myString.length - 1) == ':') { 更改为if (myString.charAt(myString.length - 1) === ':') {
    猜你喜欢
    • 2012-08-28
    • 2014-07-16
    • 2018-05-07
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多