在jquery中将当前最高值增加3

时间:2014-02-22 19:21:14

标签: javascript jquery css

我试图在javascript / jquery中将当前最高值增加3,但没有任何效果。

原因如下:

$('#searchInput').css('top', $('#searchInput').css('top')+3);

给了我-22px3

$('#searchInput').css('top', $('#searchInput').css('top')+'3px');

给了我-22px3px

我想-19px,但我不能-19px,因为我会一次又一次地添加3。

我该如何正确地做到这一点?

5 个答案:

答案 0 :(得分:1)

您可以尝试使用parseInt()解析您的值:

$('#searchInput').css('top', parseInt($('#searchInput').css('top'), 10) + 3 + 'px');

答案 1 :(得分:1)

如果你的jQuery版本超过1.6,你可以这样使用+=,我相信:

$('#searchInput').css('top', '+=3');

否则你必须做这样的事情:

var t = $('#searchInput').css('top');
$('#searchInput').css('top', t + 3 + 'px');

答案 2 :(得分:1)

你需要将当前最高值解析为整数或浮点数,然后将3和concat px解析为字符串

尝试这样:

var x = $('#searchInput').css('top');
 $('#searchInput').css('top',parseFloat(x)+3+"px");

演示:http://jsfiddle.net/a6NJk/654/

答案 3 :(得分:0)

$('#searchInput').css( "top", "+=3" );

应该做的伎俩

答案 4 :(得分:0)

你可以这样做

$('#searchInput').css('top', parseInt($('#searchInput').css('top'), 10) + 3);