在jQuery中,您可以将相对于父对象的顶部位置设置为数字,但如果css top值设置为px,则无法将其设置为数字

#elem{
  position:relative;
  top:10px;
 }
<div>
  Bla text bla this takes op vertical space....
  <div id='elem'>bla</div>
</div>
$('#elem').position().top; //Returns the number (10+(the vertical space took by the text))
$('#elem').css('top'); //Returns the string '10px'

但是我想让css top属性作为数字10

推荐答案

可以使用parseInt()函数将字符串转换为数字,例如:

parseInt($('#elem').css('top'));

Update: (as suggested by Ben): You should give the radix too:

parseInt($('#elem').css('top'), 10);

Forces it to be parsed as a decimal number, otherwise strings beginning with '0' might be parsed as an octal number (might depend on the browser used).

Jquery相关问答推荐

将选定2个AJAX结果显示到模板中

jQueryUI 模态对话框不显示关闭按钮 (x)

为什么 .join() 不能与函数参数一起使用?

如果您的 Select 器对象无效,为什么 jQuery 不会炸弹?

jQuery函数从数组中获取所有唯一元素?

JSON 服务在失败/错误时应该返回什么

如何在 jQuery .each() 的每次迭代之间添加暂停?

jQuery Button.click() 事件被触发两次

jQuery 插件:添加回调功能

jQuery:如何找到第一个可见的输入/ Select /文本区域,不包括按钮?

使用 jQuery DataTables 时禁用第一列的自动排序

使用 JavaScript 获取用户代理

使用 JQuery 激活 bootstrap 选项卡

如何使用 JSON、jQuery 将一组复杂对象发布到 ASP.NET MVC 控制器?

使用 jQuery 将事件侦听器添加到动态添加的元素

javascript,是否有像 isArray 这样的 isObject 函数?

Chrome 中的 AJAX 发送选项而不是 GET/POST/PUT/DELETE?

Jquery Select 器输入[type=text]')

如何禁用由子元素触发的 mouseout 事件?

JavaScript 在 DOM 中移动元素