我正在设计一个简单的SPA
它应使用angular.js。
它不应使用任何服务器端代码
网络应用程序应在转盘中显示多个幻灯片
幻灯片应放在app根目录的img/slides
子目录中。
幻灯片的名称应为1.jpg
,2.jpg
,... N.jpg
应用程序应在运行时检测幻灯片的数量,因为在部署代码后可能会上载或删除幻灯片。
这是我用来计算运行应用的服务器上可用幻灯片的代码:
// detect the number of available slides
var slidesCount = 0;
var slidesMax = 100;
for (var i = 0; i < slidesMax; i++) {
var url = 'img/slides/' + (1 + i) + '.jpg';
var request = new XMLHttpRequest();
request.open('HEAD', url, false);
request.send();
if (request.status === 200) {
slidesCount++;
} else {
break;
}
}
此代码正常运行,但我对此并不完全满意,因为 - 在第一个找不到的幻灯片上 - 它在控制台上发出错误:
HEAD http://localhost/spa/img/slides/7.jpg 404 (Not Found)
我确实尝试在open(); send()
周围使用try-catch块,但没有成功......
所以问题:你能否提出一些方法来避免错误被抛到控制台, OR ,一个完全不同的算法?