Javascript 使用数组中存储的id获取元素偏移量
我试图通过使用元素的id获取元素的偏移量,我已经将其存储在数组中。守则:Javascript 使用数组中存储的id获取元素偏移量,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图通过使用元素的id获取元素的偏移量,我已经将其存储在数组中。守则: var id_array = new Array; var offset_array = new Array; var i = 0; for(i = 0; i < $(".page-grid-picture").length; i++) { id_array.push($(".pag
var id_array = new Array;
var offset_array = new Array;
var i = 0;
for(i = 0; i < $(".page-grid-picture").length; i++)
{
id_array.push($(".page-grid-picture")[i].getAttribute("id"));
offset_array.push(id_array[i].offset().top);
}
但当我尝试使用id_数组时。。。我也试过:
offset_array.push(document.getElementById(id_array[i]).offset().top);
那也没用
有人能为我找到解决办法吗
提前谢谢你 您需要对jQuery对象调用
offset()
。它不是字符串或原始DOM元素上的方法
var id_数组=[];
变量偏移量_数组=[];
变量$pageGridPictures=$(“.pageGridPictures”);
$pageGridPictures.每个(函数(索引、元素){
变量$this=$(元素);
id_array.push(element.id);
offset_array.push($this.offset().top);
});代码>控制台中应该有错误(…不是函数)->;您的循环查询DOM至少n+1
次(或者在最坏的情况下2*n
),以查找类为的元素。page grid picture
其中n
是该类的元素数。id\u数组中的元素不是jQuery对象offset()
是一种jQuery方法非常感谢!工作得很有魅力:)
offset_array.push(document.getElementById(id_array[i]).offset().top);