有没有办法在 css 运算符中实现 += 运算符(假设示例中的 ui.value 具有数值)
像这样的东西(不起作用):
$("#resume_holder").contents().find('body').children().css('font-size', +=ui.value);
有没有办法在 css 运算符中实现 += 运算符(假设示例中的 ui.value 具有数值)
像这样的东西(不起作用):
$("#resume_holder").contents().find('body').children().css('font-size', +=ui.value);
尝试:
$("#resume_holder")
.contents()
.find('body')
.children()
.css('font-size', '+=' + ui.value);
(如果你使用 jQuery >= 1.6)
根据css的文档:
从 jQuery 1.6 开始,.css() 接受类似于 .animate() 的相对值。相对值是一个以 += 或 -= 开头的字符串,用于增加或减少当前值。例如,如果一个元素的 padding-left 为 10px,.css( "padding-left", "+=15" ) 将导致总 padding-left 为 25px。
示例: http: //jsfiddle.net/JMRPf/(我知道微不足道,但证明它有效)
您可以将 font-size 的实际值保存到变量中,添加 ui.value,然后将其重新分配:
var crtFontSize = parseInt($("#resume_holder").contents().find('body').children().css('font-size'));
crtFontSize += ui.value;
$("#resume_holder").contents().find('body').children().css('font-size', crtFontSize + 'px');
您可以使用animate
jquery的方法,但会逐渐显示结果..有问题吗?
$("#resume_holder").contents().find('body').children().animate('font-size', ui.value);
这会将当前字体大小更改为ui.value
包含的内容。
简短的回答,不。
但是,这可以按如下方式完成(未经测试):
$("#resume_holder").contents().find('body').children().each(function() {
$(this).css('font-size', $(this).css('font-size') + ui.value);
});
不确定,css
但您可以尝试使用animate
方法来实现它。
$("#resume_holder").contents().find('body').children()
.animate({ fontSize: '+='+ui.value });