我只是想知道是否有辦法選擇DIV中的最後一個單詞。我不認爲有什麼明顯的方法可以做到這一點,那麼是否有解決方法?選擇容器中的最後一個單詞
我不介意使用CSS或Javascript來實現這一點。
在此先感謝
我只是想知道是否有辦法選擇DIV中的最後一個單詞。我不認爲有什麼明顯的方法可以做到這一點,那麼是否有解決方法?選擇容器中的最後一個單詞
我不介意使用CSS或Javascript來實現這一點。
在此先感謝
試試這個:
var $div = $('div');
$div.html($div.text().replace(/(\w+?)$/, '<span>$1</span>'));
如果div內的文本不包含任何div元素,那麼這將工作。否則,它不會,因爲它會用純文本替換所有以前的元素。
你也許可以使用JavaScript和HTML DOM訪問div的內容,然後簡單地分割字符串(如帶有隔板的空間),並採取最後的分割部分。
<div>
或沒有<div>
,它歸結爲基本字符串處理(使用match()
)方法。
var words = $('#your_div').text().match(/(\w+)/g);
if (words.length) {
var last_word = words[words.length - 1];
}
我們建立的使用方法match()
所有單詞一個數組,然後拿到最後一個(var last_word = words[words.length - 1];
),但前提是發現了一些字(if (words.length)
)。
感謝您的回答,但我不明白這可如何用作選擇器。我需要在「」中包含最後一個單詞。也許使用'.replace()'方法? –
這裏是我解決這個問題:
演示:http://wecodesign.com/demos/stackoverflow-7075397.htm
function getLastWord(words) {
lastWord = words.split(' ').pop();
return lastWord;
}
$(document).ready(function() {
theWords = $('#theWords').html();
lastWord = getLastWord(theWords);
$('#lastWord').html(lastWord);
});
範圍蔓延! 鑑於新的要求,動態地注入跨度標籤,我已經修改了代碼如下(我也更新了我的演示):
$(document).ready(function() {
theWords = $('#theWords').html();
lastWord = getLastWord(theWords);
appendCon = '#lastWord';
$(appendCon) .append($('<span> '+lastWord+'</span>'));
});
這個問題是我需要''自動添加。內容將由Wordpress動態添加。 –
如果你是又一個基於正則表達式的解決方案,你可以嘗試(使用jQuery的):
$(function() {
$('div').each(function() {
var $div = $(this);
var text = $div.text(); // get the text of everything inside the div
// the next line gets the last word followed only by non-word characters in that text
// NB: the [\s\S] trick is to match any character, *including* new lines
var last_word = $.trim(text).replace(/^[\s\S]*\b(\w+)\b[\W]*$/i, '$1');
// this is from a jsFiddle I tried to post to test it.
$('#output').append($div.attr('id') + ': Last word = ' + last_word + '<br />');
});
});
This Works。
var text = 'Lorem Ipsum Dolor Sit Amet';
var textSplit = text.split(' ');//split the text with space characters
var lastPart = textSplit.pop(); // retrieve the last word from the string
var firstPart = textSplit.join(' '); // retriece the words except the last word
var result = firstPart + ' <strong>' + lastPart + '</strong>'; //join first part and last part and put the required html for the last word
它工作完美,但如果我們有一些變音符號它不適用,爲什麼?一些想法? –