字符串的粗体部分/将样式添加到变量

问题描述:

我只需要粗体显示此字符串中的日期。字符串的粗体部分/将样式添加到变量

<div class="foo"><p> Click here now and get by January 1st </p></div> 

我能够拉出来的日期和它

var fullMessage = $('.foo p').text(); 
var justTheDate = fullMessage.substring(fullMessage.indexOf('get by') + 7); 

创建一个变量,但我不能大胆子/可变我创建的。我希望这样的事情可以工作:

$(justTheDate).css("font-weight","700"); 

这可能吗?

+0

从提出问题的方式来看,您并不清楚您正在处理已经呈现的html页面。 – javaBean007

假设日期在最后,您可以使用jquery(或常规javascript)创建一个span,并使用append或appendChild将其添加到p标记中。

var fullMessage = $('.foo p') 
var justTheDate = fullMessage.substring(fullMessage.text().indexOf('get by') + 7); 
fullMessage.append('<span class="date">' + justTheDate + '</span>'); 

把它放在一个范围内,并使用一个类来处理该部分的CSS。

<style> 
    .date { 
     font-weight: 700; 
    } 
</style> 
<div class="foo"><p> Click here now and get by <span class="date">January 1st</span></p></div> 

+0

OP询问如何添加....不直接添加到HTML中。 – epascarello

+0

相信我,如果可以的话,我会这么做的!数据正在以这种方式返回给我。 – user3390251

我希望这可以帮助你:

var element = $('.foo p'), 
    fullMessage = element.text(), 
    justTheDate = fullMessage.substring(fullMessage.indexOf('get by') + 7), 
    boldIt = '<span style="font-weight: 700">' + justTheDate + '</span>', 
    newHtml = fullMessage.replace(justTheDate, boldIt); 

    element.html(newHtml) 

Fiddle demo

不知道为什么你不能简单地在一个强大的标签包装的日期部分?

如果日期是动态填充的,就像通过一个变量一样,你可以在你的p标签中有一个span标签的占位符,里面有一个类。

由于<span class="date"></span>

注入你的日期值到该标签,然后简单地套用css来此标记。

span.date{font-weight: 600;}