你好我试图风格javascript中的字符串。 这里是我的代码:
function runtest(){
document.getElementById("test1").innerHTML.substring(0,2).style.fontStyle="italic";
}
该子功能的工作原理,但是当我添加样式的错误控制台给我的错误“不确定”。 我怎样才能的作风,串用JavaScript?
你好我试图风格javascript中的字符串。 这里是我的代码:
function runtest(){
document.getElementById("test1").innerHTML.substring(0,2).style.fontStyle="italic";
}
该子功能的工作原理,但是当我添加样式的错误控制台给我的错误“不确定”。 我怎样才能的作风,串用JavaScript?
有两种选择:
一个innerHTML
解决方案。 警告 :这将删除你在做它的元素中的任何元素的任何事件处理程序。 我在这里提到它主要是让我可以指出这一点:
var elm = document.getElementById("test1"); var html = elm.innerHTML; elm.innerHTML = '<span style="font-style: italic">' + html.substring(0, 2) + '</span>' + html.substring(2);
使用splitText
。 在这里我假设你想在一个跨度来包装文本元素中的第一个文本节点。 你会在元素不会弄乱事件处理程序:
var elm = document.getElementById("test1"); var node = elm.firstChild; var span = document.createElement('span'); node.splitText(2); span.style.fontStyle = "italic"; elm.insertBefore(span, node); span.appendChild(node);
splitText
创造那里曾经是一个两个相邻的文本节点,与分割点是在偏移指定。 然后,我们采取的第一个,并在其包装span
。
活生生的例子 | 实时源