[英]jQuery: try catch { call function } does not work?
我的页面上有很多JavaScript,而且我正在使用typekit。 为了使我的页面正常工作(网格和东西)我正在使用新的typekit字体事件。
它只是一个try和catch语句,用于检查字体是否加载。 但不知怎的,我没有得到它。 如果加载了typekit字体,我正在调用setGrid()
函数,但是iPad或iPhone还不支持,所以当我不调用setGrid()
函数时,我的页面没有正确显示。
无论如何,我也想在错误语句中调用该函数,因此如果在iPhone上调用该页面,该页面也可以在没有webfonts的情况下工作。
try {
Typekit.load({
loading: function() { },
active: function() { setGrid(); },
inactive: function() { }
})
} catch(e) {
alert('error'); //works
setGrid(); //doesn't get called
}
但是, alert
工作, setGrid()
函数不会被调用。 有任何想法吗?
编辑:该函数看起来像:
var setGrid = function () {
$('#header, #footer').fadeIn(500);
return $("#grid").vgrid({
easeing: "easeOutQuint",
time: 800,
delay: 60
});
};
尝试使其成为“真正的”功能,如下所示:
function setGrid() {
$('#header, #footer').fadeIn(500);
return $("#grid").vgrid({
easeing: "easeOutQuint",
time: 800,
delay: 60
});
};
该函数确实被调用,但它不会像您预期的那样工作,导致您认为它没有被调用。 您可以通过添加警报作为setGrid的第一行来查看它是否被调用。
你能:
setGrid
alert
以确认它正在通过setGrid
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.