任何人都可以提供這方面的建議嗎?我試圖創建一個jQuery的函數,將採取一個字符串的最後3個字符和不同的風格。在我的情況下,字體大小的一半。功能風格部分字符串
所以像€100.50字符串.50會更小
可有人請點我在正確的方向?或者,如果插件/腳本已經存在讓我知道
謝謝!
Dec
任何人都可以提供這方面的建議嗎?我試圖創建一個jQuery的函數,將採取一個字符串的最後3個字符和不同的風格。在我的情況下,字體大小的一半。功能風格部分字符串
所以像€100.50字符串.50會更小
可有人請點我在正確的方向?或者,如果插件/腳本已經存在讓我知道
謝謝!
Dec
你想修改的文本需要被包裝在另一個html元素中,你可以添加一個類或內聯樣式來使css adjustmets
假設這個凝視的html,並使用jQuery來獲取和設置mosified文本/ html :
<span>€100.50</span>
。
$('span').html(function(idx, oldHtml) {
var startStr = oldHtml.substring(0, oldHtml.length - 3)
var endStr = '<small>' + oldHtml.substring(oldHtml.length - 3) + '</small>'
return startStr + endStr;
});
好吧,不一定涉及jquery。 您可以將字符串作爲參數包裝到樣式化的DIV中。
類似:
txt = $("#id").text();
txt = style_string(txt);
function style_string(string){
...
if(){
string = "<div class='class-to-style'>" +string+"</div>"
}....
}
可有人請點我在正確的方向? ...
使用replace
包裝在標籤中的文字並添加一類具有CSS樣式吧:
$el.html($el.text().replace(/.{3}$/, '<span class="small">$&</span>'));
也許你可以使用一個函數,得到想要的字符串的長度並剪切它的最後3個字母,然後將它們放入一個新的字符串中,放入一個新的標籤(跨度或某物),並帶有想要的類別
試試這個:
function formatString(txt) {
var i = txt.lastIndexOf(".");
if(i === -1) return txt; // if txt => $10 return
return txt.slice(0, i) + "<span class='smaller'>" + txt.slice(i) + "</span>";
}
我經常使用的格式化,如:
HTML
<div id="price"></div>
CSS
.decimal {
font-size:10px;
color:black;
}
JS
function formatPrice(price, containerId, digits) {
var startStr,
endStr,
containerElem = $("#"+containerId);
//cut last specified digits
startStr = price.substr(0, price.length - digits);
endStr = price.substr(price.length - digits, price.length);
//DOM elements
$("<span/>")
.text(endStr)
.addClass("decimal")
.appendTo(containerElem)
.parent()
.prepend(startStr);
}
var price = "€100.50";
formatPrice(price, "price", 3);
當你問,你在你所使用的語言的標籤指定一個「功能」它確實有幫助。 –