有谁知道这是否可以在 jQuery 中实现。Target/addClass 到元素的最后一个单词,在本例中是 h1 标签内的单词“Text”。请记住,我知道我可以使用 span 标签定位最后一个单词,但我正在使用具有 %My_heading% 标记之类的 CMS。(不完全是,但我希望这被理解)
<h1>Some Heading Text</h1>
有谁知道这是否可以在 jQuery 中实现。Target/addClass 到元素的最后一个单词,在本例中是 h1 标签内的单词“Text”。请记住,我知道我可以使用 span 标签定位最后一个单词,但我正在使用具有 %My_heading% 标记之类的 CMS。(不完全是,但我希望这被理解)
<h1>Some Heading Text</h1>
如果您需要在最后一个单词中添加类,则无论如何都需要用标签将其包围。
最简单的方法之一是使用正则表达式:
$("h1").html(function(index, old) {
return old.replace(/(\b\w+)$/, '<span class="myClass">$1</span>');
});
演示:http: //jsfiddle.net/Dy4vh/
$('h1').html(function(index, curHTML) {
var text = curHTML.split(/[\s-]/),
newtext = '<span class="some">' + text.pop() + '</span>';
return text.join(' ').concat(' ' + newtext);
});
就像是
//Split the string into words
var last_arr = $('h1').text().split(' ');
//Get the last one
var last = last_arr[last_arr.length - 1];
你的意思是:
var txt = $("h1").text();
var splitted = txt.split(" ");
var lastWord = splitted.pop();
var newTxt = splitted.join(" ") + "<span class='someclass'> " + lastWord + "</span>";
console.log(newTxt);
小提琴:http: //jsfiddle.net/7qUb6/