我需要从“style”属性中提取一些东西:“top”和“left”属性
<div style="top: 250px; left: 250px;" id="1" class="window ui-draggable">
使用jQuery执行此操作的最佳方法是什么?有一种简单的方法,还是我必须求助于字符串函数?
答案 0 :(得分:35)
这取决于你的需要。如果你需要计算值 - 例如解析所有样式表后浏览器使用的实际值 - 使用
$("#element_1").css("top")
$("#element_1").css("left")
如果它是一个像素值,那么总是将是style
属性中指定的值 - ,除非被样式表中的!important
语句覆盖
如果显式需要元素的style
属性中指定的值,请使用
$("#element_1")[0].style.top
$("#element_1")[0].style.left
与.css()
不同,如果未在style
属性中指定这些值,则这些值将为空。
(使用ID element_1
,您不能拥有名为1
)
答案 1 :(得分:4)
您可以使用CSS
功能:
var topValue = $(this).css("top"); //Change the selector to meet your needs
var leftValue = $(this).css("left"); //Change the selector to meet your needs
答案 2 :(得分:1)
可以通过标准DOM属性访问CSS属性:
alert( $("#theElement")[0].style.top ) // "250px"
alert( $("#theElement")[0].style.left ) // "250px"
另外,"1"
不是有效的HTML元素ID。
答案 3 :(得分:1)
使用.css()将返回一个整数+ px,但是你可以通过这样做轻松得到一个漂亮的整数:
var yourVar = parseInt($('selector').css('top'), 10);
答案 4 :(得分:0)