SCRIPT LANGUAGE="JavaScript" src="http://www.cssrain.cn/demo/JQuery+API/jquery-1[1].2.1.pack.js"/SCRIPT
SCRIPT LANGUAGE="JavaScript"
!–
$(function(){
alert( $("#re").css("left") + " " + $("#re").get(0).style.posLeft +" "+ $("#re").get(0).style.pixelLeft )
})
//–
/SCRIPT
div id="re" style=" position : absolute ; left:200px;"aaaaaaa/div
=========================
对比下:
$("#re").css("left") : 返回200px,
$("#re").get(0).style.posLeft :返回200,
$("#re").get(0).style.pixelLeft :返回200,
所以后面2个适合于 计算, 因为没有单位 ,很适合计算.
那么posLeft 和pixelLeft 又有什么区别呢?
概念东西不说了 举个例子吧,
比如我把div的left改成 left:200em;
程序代码
div id="re" style=" position : absolute ; left:200em;"aaaaaaa/div
这时候
left: 200em;
posLeft 返回: 200 ;
pixelLeft 返回 : 4267 ;
所以
left 是字符串,是取html中left的值.
posLeft 就是将left的值转化为数值类型,而且是浮点型 . (不带单位)
pixelLeft 是数值,是将left的值(如果是空串则赋为0)转化为像素值.. (不带单位)。
由于上面属性只支持 ie.(所以不建议使用)
建议使用
$("#re").get(0).offsetLeft
这个属性通用.
jquery1.2以后支持:
$("p").offset().left
SCRIPT LANGUAGE="JavaScript"
!–
$(function(){
var p = $("p");
var offset = p.offset();
p.html( "left: " + offset.left + ", top: " + offset.top );
})
//–
/SCRIPT
br/br/br/br/
paaa/p