-2

我有以下问题:

我的 JavaScript 代码以这种方式显示显示值:

d3.select("#" + uiElement).html("")
                        .append("span").attr("class", "displayvalue").html(stringToUse);

stringtoUse 是要显示的值,我的问题是在该字符串下划线,但有时,不需要在所有字符串下划线,而是在除第一个字符之外的所有字符串下划线。在您看来,最好的方法是什么?

4

2 回答 2

2

使用 CSSfirst-letter伪元素。使您的所有文本带下划线,然后将 css 应用于它:

#element::first-letter
{ 
text-decoration:none !important:
}

参考使用。

通过简单的纯javascript:

var text = document.getElementById("element").innerHTML;
document.getElementById("element").innerHTML = text.substring(0,1)+"<u>"+text.substring(1)+"</u>";
于 2013-09-09T16:04:20.740 回答
1

这将允许您直接使用 CSS 格式化任何 javascript innerHTML,而无需在 javascript 中麻烦:

的JavaScript:

function test(){
document.getElementById('pp').innerHTML = 'here is pp';
document.getElementById('qq').innerHTML = 'here is qq';
}

的HTML:

<p style = 'whatever'>
<a id = 'pp'></a>
<a id = 'qq' style = 'color:red; text-decoration: underline;' ></a>
</p>
  <script>
  test()
  </script>

这适用于有或没有像<p>.

于 2018-02-14T22:56:50.177 回答