我有以下div:
<div id="new" style="position: absolute; z-index: 100; top: 210px; width: 195px..
Run Code Online (Sandbox Code Playgroud)
top
事件发生时增加财产的最佳方法是什么?
请注意,我已经尝试过:$('#new').css('top')+10
但问题是.css
返回字符串.
Ste*_*lor 127
最简单的方法是使用+=
运算符:
$( '#new' ).css( 'top', '+=10px' );
Run Code Online (Sandbox Code Playgroud)
Ple*_*and 38
您可以使用该parseFloat
函数仅获取初始数字部分并将其从字符串转换为数字.例如:
var n = $('#new');
n.css('top', (parseFloat(n.css('top')) + 10) + 'px');
Run Code Online (Sandbox Code Playgroud)
作为旁注,如果您想同时更改多个元素的位置,可能是:
$('.someClass').css('top', function(i, v) {
return (parseFloat(v) + 10) + 'px';
});
Run Code Online (Sandbox Code Playgroud)
但是,如果您只是尝试动画元素随着时间的推移,请看看jQuery的.animate
方法.