Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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 如果新图像太小,如何停止ajax过程_Javascript_Ajax_Image - Fatal编程技术网

Javascript 如果新图像太小,如何停止ajax过程

Javascript 如果新图像太小,如何停止ajax过程,javascript,ajax,image,Javascript,Ajax,Image,我只想在newimg为960x540时运行ajax过程,但是获取img.onload的结果似乎有问题 var src = localStorage.getItem('img'); img = new Image(); img.src = src; var x = 0; img.onload = function() { if (img.naturalWidth < 960 || img.naturalHeight < 540) { $('.cmenu').hi

我只想在
newimg
960x540
时运行ajax过程,但是获取
img.onload
的结果似乎有问题

var src = localStorage.getItem('img');
img = new Image();
img.src = src;
var x = 0;
img.onload = function() {
    if (img.naturalWidth < 960 || img.naturalHeight < 540) {
        $('.cmenu').hide();
        console.log('CHOOSEN IMAGE IS TOO SMALL!');
        x = 1;
        return false; // doesn't work
    }
}
if (x == 1) {return false;}  // doesn't work.
$.ajax({...
var src=localStorage.getItem('img');
img=新图像();
img.src=src;
var x=0;
img.onload=函数(){
如果(img.自然高度<960 | | img.自然高度<540){
$('.cmenu').hide();
log('CHOOSEN映像太小!');
x=1;
return false;//不起作用
}
}
如果(x==1){return false;}//不起作用。
$.ajax({。。。

如果图像小于
960x540
,如何停止
ajax

问题是
img.onload
将在加载图像后发生,如果(x==1)检查已失败,也会在
后发生。
要使其正常工作,我建议在大小正确的情况下,将ajax调用放入
onload
函数中:

img.onload = function() {
    if (img.naturalWidth >= 960 || img.naturalHeight >= 540) {
        $.ajax({...
    }
    else{
        $('.cmenu').hide();
        console.log('CHOOSEN IMAGE IS TOO SMALL!');
    }
}

反过来做。只有在图像的
onload
处理程序中大小正确时才启动ajax调用。