我有一个div,我给出的风格如下。
#MainDiv
{
position:relative;
left:150px;
right:150px;
}
我想根据左右参数给出#MainDiv
的宽度。为此,我给出如下。
$("#MainDiv").width($("#MainDiv").width() - $("#MainDiv").css("left") - $("#MainDiv").css("right"));
但是$("#MainDiv").css("left")
在警报中给了我150px
。我只想要150
。为此,我使用了offset
属性,$("#MainDiv").offset().left
和$("#MainDiv").offset().right
。左侧值为158
,右侧为undefined
。 offset
在这种情况下不正确?如何在值的末尾删除px
并获取确切的值?
答案 0 :(得分:9)
做的:
var left = parseInt($("#MainDiv").css("left"), 10);
答案 1 :(得分:3)
尝试使用jQuery position()
$(element).position().top;
$(element).position().left;
答案 2 :(得分:1)
parseInt( $("#MainDiv").css("left").replace('px', '') );
答案 3 :(得分:0)
试试这个:
$("#MainDiv").css("left").slice(0, -2);
$("#MainDiv").css("right").slice(0, -2);
答案 4 :(得分:0)
您无需删除px。你的脚本错了。这应该可以帮助你 -
<div id="MainDiv"></div>
CSS
#MainDiv
{
position:relative;
left:60px;
right:50px;
border:1px solid;
height:10px;
background-color: yellow;
}
的jQuery
$("document").ready(function() {
$("#MainDiv").width(parseInt($("#MainDiv").css("left")) - parseInt($("#MainDiv").css("right")));
});