Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过javascript确定是否存在其他URL_Javascript - Fatal编程技术网

通过javascript确定是否存在其他URL

通过javascript确定是否存在其他URL,javascript,Javascript,我正在使用一个提供图像的servlet。但是,生成此文件大约需要30秒。完成后,它将显示在OpenLayers交互地图上 我正试图为位于www.test.com的用户找到一种方法,以确认图像正在处理或已完成,该方法位于www.test2.com。如果我打开test2.com,我可以看到页面正在尝试加载。完成后,图像也会显示在test.com上的“我的地图”上 但是,我不知道如何测试这个图像是否存在。我在找可能像这样的东西 if(image exists at http://test2.c

我正在使用一个提供图像的servlet。但是,生成此文件大约需要30秒。完成后,它将显示在OpenLayers交互地图上

我正试图为位于www.test.com的用户找到一种方法,以确认图像正在处理或已完成,该方法位于www.test2.com。如果我打开test2.com,我可以看到页面正在尝试加载。完成后,图像也会显示在test.com上的“我的地图”上

但是,我不知道如何测试这个图像是否存在。我在找可能像这样的东西

    if(image exists at http://test2.com) {alert("request is done");
或者可能

    if(http://test2.com is loading) {doing something);
我只是不希望用户在请求失败时袖手旁观。如果失败,url将完成加载-但是,不会显示任何图像。任何指导都将不胜感激!谢谢


Kyle

如果它是另一台服务器,JavaScript将无法向该服务器发出任何类型的Ajax请求,以查看它是否存在。您必须在本地域上有一个代理,它可以向第二个域发出head请求

如果要等待图像加载后才能使用它,则始终可以执行图像预加载,但这将占用图像在引发onload事件之前渲染的全部时间

var img = new Image();
img.src = theUrl;
img.onload = function() {
    nextStep(this);
};
img.onerror = function() {
     imgLoadingError(this);
};

如果它是另一台服务器,JavaScript将无法向该服务器发出任何类型的Ajax请求,以查看它是否存在。您必须在本地域上有一个代理,它可以向第二个域发出head请求

如果要等待图像加载后才能使用它,则始终可以执行图像预加载,但这将占用图像在引发onload事件之前渲染的全部时间

var img = new Image();
img.src = theUrl;
img.onload = function() {
    nextStep(this);
};
img.onerror = function() {
     imgLoadingError(this);
};

如果您可以控制另一台服务器,您可以在该服务器上放置一个小映像,并执行如下操作:(未测试的代码,直接键入)


如果您可以控制另一台服务器,您可以在该服务器上放置一个小映像,并执行如下操作:(未测试的代码,直接键入)


如果页面在加载图像时阻塞,则可以添加
img
元素,然后检查何时触发
load
事件。如果页面在加载图像时阻塞,则可以添加
img
元素,然后检查何时触发
load
事件。这不一定是ajax和ajax因此,将不受同一原产地政策的约束(正如图像目前在某些地图元素中工作的事实所证明的那样)。您可以在任何地方加入
img
s,效果完美!我至少可以证明这个过程正在进行中。谢谢,这不一定是ajax,因此不受同源策略的约束(这可以从图像目前在某些地图元素中工作这一事实得到证明)。您可以在任何地方加入
img
s,效果完美!我至少可以证明这个过程正在进行中。非常感谢。