如果Google Plus One无法在5秒内加载,我想要一个停止加载页面的功能。在我们国家/地区,有时HTTPS端口被电信部门阻止,我们无法访问apis.google.com。它不仅慢,我们真的无法访问HTTPS端口。如果是这种情况,我想要一些在我们无法访问https://apis.google.com/js/plusone.js时停止加载页面的方法。我怎么能这样做?
答案 0 :(得分: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);
答案 1 :(得分:0)
您可以使用ajax加载文件并使用超时。
jQuery ajax docs 页面上的“超时”按Ctrl + F,并在 this SO question 中查看其使用情况。