Javascript jQuery使用条件
我有一个字符串需要用标签Javascript jQuery使用条件,javascript,jquery,Javascript,Jquery,我有一个字符串需要用标签HTML包装,条件如下: <h1>Test</h1> 然后只有第一个单词将被span包装,结果: <h1><span>Test</span> Lagi ah</h1> testlagiah 在jQuery中如何做到这一点? $('*:contains(“Test”)).html(“Test”); 如果您的“测试”是静态文本,则可以通过这种方式完成。这样做: 以下是JS: function wr
HTML
包装,条件如下:
<h1>Test</h1>
然后只有第一个单词将被span
包装,结果:
<h1><span>Test</span> Lagi ah</h1>
testlagiah
在jQuery中如何做到这一点?
$('*:contains(“Test”)).html(“Test”);
如果您的“测试”是静态文本,则可以通过这种方式完成。这样做:
以下是JS:
function wrapFirstWord($el, word){
$el.each(function(){
var txt = $(this).text();
var wordArray = txt.split(' ');
if(wordArray[0] === word && wordArray.length > 1){
var newHTML = '<span>' + word + '</span>';
for(var i = 1; i < wordArray.length; i++){
newHTML += ' ' + wordArray[i];
}
$(this).html(newHTML);
}
});
}
$(function(){
wrapFirstWord($('h1'),'Test');
});
函数wrapFirstWord($el,word){
$el.每个(函数(){
var txt=$(this.text();
var wordArray=txt.split(“”);
if(wordArray[0]==word&&wordArray.length>1){
var newHTML=''+word+'';
对于(var i=1;i
您只需将要检查单词($el)以及要查找的单词的元素集传递给
wrapFirstWord()
。遵循CoryLarson的链接后,这里是一个更好的解决方案:
$(函数(){
$('h1')。每个(函数(){
var me=$(此);
if(/(\W+/.test(me.html())){
html(me.html().replace(/^(\w+/,“$1”);
}
});
});
希望有帮助。$(函数(){
$(function(){
$('h1').each(function(){
var txt = $(this).text();
var wordArray = txt.split(' ');
var new_first = '<span>'+wordArray[0]+'</span>';
var new_txt = txt .replace("wordArray[0]",new_first);
$(this).html(new_txt);
});
});
$('h1')。每个(函数(){
var txt=$(this.text();
var wordArray=txt.split(“”);
var new_first=''+wordArray[0]+'';
var new_txt=txt.replace(“wordArray[0]”,new_first);
$(this.html(new_txt);
});
});
请不要使用签名。此外,这里可能还有一个相关的问题和解决方案:说谢谢是错误的,JIP,我不反对用“谢谢”作为签准,只是指出OP中还包含了一个签名,FAQ对此不屑一顾。对不起,我的意思是文字测试只是为了测试目的,而不是真正的实现。第一个单词可以是test
,morning
,午后
,这是否意味着您想要一些可以包装第一个单词的东西?或者您希望能够将所选单词作为参数传递给函数?我想要一些能够包装第一个单词的内容请参阅我更新的fiddle/代码。这将允许您使用任何单词和任何元素完成任务。单词test
不是静态单词。
$('*:contains("Test")').html('<span>Test</span>');
function wrapFirstWord($el, word){
$el.each(function(){
var txt = $(this).text();
var wordArray = txt.split(' ');
if(wordArray[0] === word && wordArray.length > 1){
var newHTML = '<span>' + word + '</span>';
for(var i = 1; i < wordArray.length; i++){
newHTML += ' ' + wordArray[i];
}
$(this).html(newHTML);
}
});
}
$(function(){
wrapFirstWord($('h1'),'Test');
});
$(function(){
$('h1').each(function(){
var me = $(this);
if(/(\W+)/.test(me.html())) {
me.html(me.html().replace(/^(\w+)/, '<span>$1</span>'));
}
});
});
$(function(){
$('h1').each(function(){
var txt = $(this).text();
var wordArray = txt.split(' ');
var new_first = '<span>'+wordArray[0]+'</span>';
var new_txt = txt .replace("wordArray[0]",new_first);
$(this).html(new_txt);
});
});