如果 Google Plus One 无法在 5 秒内加载,我想要一个停止页面加载的功能。在我们国家,有时 HTTPS 端口被电信部门封锁,我们无法访问 apis.google.com。它不仅慢,我们真的无法访问 HTTPS 端口。如果是这种情况,当我们无法访问https://apis.google.com/js/plusone.js时,我想要某种方式来阻止页面加载。我怎样才能做到这一点?
问问题
281 次
2 回答
1
只需检查 Plusone 脚本是否在 5 秒内加载,如下所示:
var i=0, checkPlusone = setInterval(function() {
if (typeof gapi!='undefined') {
if (gapi.hasOwnProperty('plusone')) {
clearInterval(checkPlusone);
console.log('Plusone loaded');
}
}
if (i>5000) {
clearInterval(checkPlusone);
console.log('Plusone not loaded');
window.location = "http://www.mypage.com/no_plusone.html"; //redirect to error page
}
i=i+300;
}, 300);
于 2012-04-26T21:13:11.077 回答
0
您可以使用 ajax 加载文件并使用超时。
Ctrl+F 用于jQuery ajax 文档页面上的“超时”,并在这个 SO question中查看它的使用情况。
于 2012-04-26T20:50:32.577 回答