Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用数组中存储的id获取元素偏移量_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 使用数组中存储的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

我试图通过使用元素的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($(".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);