Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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 JS预加载图像错误_Javascript_Jquery - Fatal编程技术网

Javascript JS预加载图像错误

Javascript JS预加载图像错误,javascript,jquery,Javascript,Jquery,我创建了一个包含页面上所有图像URL的数组,然后将该数组发送到一个函数,该函数依次加载每个图像。然后页面加载布局。但是,我收到了错误: Uncaught TypeError: object is not a function 非常感谢您的帮助 JS: $(document).ready(function () { preLoadImages(); useIsotope(); }); function useIsotope() { var $container = $(

我创建了一个包含页面上所有图像URL的数组,然后将该数组发送到一个函数,该函数依次加载每个图像。然后页面加载布局。但是,我收到了错误:

Uncaught TypeError: object is not a function
非常感谢您的帮助

JS:

$(document).ready(function () {
    preLoadImages();
    useIsotope();
});

function useIsotope() {
    var $container = $('#work').isotope({
        filter: "*"
    });

    $('#control ul li a').click(function () {
        var selector = $(this).attr('data-filter');
        $container.isotope({ filter: selector });
        return false;
    });
}

function preload(arrayOfImages) {
    $(arrayOfImages).each(function () {
        $('<img/>')[0].src = this;
    });
}

function preLoadImages() {
    var imageArray = new Array();
    $('.imgWrapper a img').each(function (index) {
        imageArray.push(this.src)
    });
    console.log(imageArray)
    preLoad(imageArray) // HERE IS THE ERROR
}
$(文档).ready(函数(){
预加载图像();
使用同位素();
});
函数{
var$container=$('#work')。同位素({
过滤器:“*”
});
$(“#控制ul li a”)。单击(函数(){
变量选择器=$(this.attr('data-filter');
$container.同位素({filter:selector});
返回false;
});
}
功能预加载(阵列图像){
$(arrayOfImages)。每个(函数(){
$('使用
预加载(imageArray)
而不是
预加载(imageArray)


JavaScript是区分大小写的。(

我看不出您评论的地方有错误,但这看起来像是一个错误

你正在设置 $container=$('#work')。同位素({ 过滤器:“*” }))

然后试着打电话

$container.isotope({ filter: selector });
我想你可能想这样写

function useIsotope(){

  var $container = $('#work');
  $container.isotope({ filter: "*" });

  $('#control ul li a').click(function(){

    var selector = $(this).attr('data-filter');
    $container.isotope({ filter: selector });
    return false;
  });

}
更新阅读@Guy的答案后,我也看到了preload v.preload错误