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调用。