我有,我想改变用+和文本的字体大小的文本区域 - 按钮。jQuery的字体大小操纵文本区域抠图
我知道如何获得字号使用JavaScript/jQuery的改变。这一切都很好。然而,我的问题是,随着字体大小的增长,它开始伸出文本框。第一行的上半部分将被塞在文本输入区域的顶部条之下。我试着按比例调整行高字体大小的增加,但它似乎并没有解决问题
这里是我的代码:
HTML
<div style="color: #0D1E28">
<a href="#" id="minustext">-</a>
<a href ="#" id="resetfont">
<span style="font-size: 9px; letter-spacing: -3px;">A</span>
<span style="font-size: 16px;">A</span>
</a>
<a href="#" id="plustext">+</a>
</div>
<textarea name="txtOutput" id="txtOutput" style="width: 600px; height: 550px; line-height: 8.5; overflow: auto; font-size: 21.5px;" rows="2" cols="20" readOnly="readonly">
</textarea>
的JavaScript
$(document).ready(function() {
$("#plustext").click(function() { resizeText(1); });
$("#minustext").click(function() { resizeText(-1); });
$("#resetfont").click(function() { $("#txtOutput").css('font-size', "14px"); });
});
function resizeText(multiplier) {
if ($("#txtOutput").css('font-size') == "") {
$("#txtOutput").css('font-size', "12px");
var currentFontSize = $("#txtOutput").css('font-size');
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = (currentFontSizeNum + (multiplier * 0.5)) + "px"; ;
var currentLineHeight = $("#txtOutput").css('line-height');
if (currentLineHeight == "normal") {
currentLineHeight = "1";
}
var currentLineHeightNum = parseFloat(currentLineHeight, 10);
var newLineHeight = (currentLineHeightNum + (multiplier * 0.5));
$("#txtOutput").css('line-height', newLineHeight).css('font-size', newFontSize);
}
意见建议?
此代码不能正常工作。您可以设置字体大小行这样的:$( “#txtRegistryReportOuput”)的CSS( '字体大小', '12像素')不是这样的:$( “#txtRegistryReportOuput”)的CSS( '字号')= “12像素” ; –
对不起,我会更新它。我试图改变名称为公共目的,但我错过了一些。感谢您的支持 – George
@George - 问题不仅仅在于id,而在于您试图为函数调用的结果赋值,而这是您无法做到的。完成你想要做的事情的正确方法是在调用'.css()'的时候将字体大小设置为第二个参数。即,'.css(“font-size”,“12px”)',而不是'.css(“font-size”)= 12px'。 – gilly3