我在下面有功能isRetina
,我试图访问另一个resizeImage()
内的结果,但是变量retinaCheck总是让我回到未定义状态。我在开始时声明了全局变量,为什么会这样呢?在另一个函数中访问函数结果
$(window).load(function() {
function isRetina() {
return ((window.matchMedia && (window.matchMedia('only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx), only screen and (min-resolution: 75.6dpcm)').matches || window.matchMedia('only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2)').matches)) || (window.devicePixelRatio && window.devicePixelRatio > 2)) && /(iPad|iPhone|iPod)/g.test(navigator.userAgent);
}
var retinaCheck = isRetina();
});
function resizeImage() {
if ($(window).width() > 649) {
console.log("resize:" + retinaCheck)
}
});
显示完整的代码。 – Cheery 2014-09-30 07:18:50
工作正常:http://jsfiddle.net/rx0khzp0/1/ – DhruvPathak 2014-09-30 07:20:27
寻求调试帮助(“为什么不是这个代码工作?”)的问题必须包括所需的行为,特定的问题或错误**和最短的代码有必要在问题本身**中重现它。如果没有能够重现问题的代码(您的代码不会这样做 - 在snipper中尝试) - 我们无法为您提供帮助。 – 2014-09-30 07:20:33