Javascript 在呈现img html组件时重定向或显示错误消息

Javascript 在呈现img html组件时重定向或显示错误消息,javascript,html,Javascript,Html,我从对自制服务器的请求中返回一个简单的html页面: <html> <head> <title>Server Sample</title> </head> <img src="/stream.jpeg"> </html> 服务器示例 要在页面的img中呈现图像,向服务器发出第二个请求,在路径/stream.jpeg下获取实际图像数据。但是,如果这个请求由于某些原因失败,我想向用户显示一个

我从对自制服务器的请求中返回一个简单的
html
页面:

<html>
  <head>
    <title>Server Sample</title>
  </head>
  <img src="/stream.jpeg">
</html>

服务器示例
要在页面的
img
中呈现图像,向服务器发出第二个请求,在路径/stream.jpeg下获取实际图像数据。但是,如果这个请求由于某些原因失败,我想向用户显示一个错误页面,或者一条消息。从失败请求的上下文重定向或生成html错误页面似乎不起作用,可能是因为初始页面需要图像。在这种情况下,页面显示“空”img标记,而不是所需的错误

解决这个问题最便捷的方法是什么?如果可能的话,我更喜欢使用html解决方案,但也允许使用javascript

请注意,我编写的服务器非常简单,动态生成非常简单的页面,它没有复杂服务器可以提供的扩展类型。

尝试以下方法:

<img src="stream.jpeg" onerror="errorFunction();">
此函数必须在标记之前定义。否则,如果在定义函数之前未能加载图像,HTML将找不到此函数,您将收到一个引用错误。

请尝试以下操作:

<img src="stream.jpeg" onerror="errorFunction();">

此函数必须在标记之前定义。否则,如果在定义函数之前未能加载图像,HTML将找不到此函数,您将得到一个引用错误。

您可以在此处看到答案:但这是否需要jquery之类的东西?我的是一个非常简单的,自制的http服务器,我可以自动生成简单的页面,不想/不能依赖复杂的东西…jQuery非常简单-它只是一个js库,使使用js变得更容易,例如它可以进行ajax调用(你需要这样做来检查图像url是否工作)简单得多简单的方法是使用jQuery的ajax或load方法。但是,如果出于某些原因不想只为一个方法加载整个库,那么可以使用原生XMLHTTPRequest获取图像数据,并对其执行任何操作。这里是doc:你可以在这里看到答案:但是这需要jquery和类似的东西吗?我的是一个非常简单的,自制的http服务器,我可以自动生成简单的页面,不想/不能依赖复杂的东西…jQuery非常简单-它只是一个js库,使使用js变得更容易,例如它可以进行ajax调用(你需要这样做来检查图像url是否工作)简单得多简单的方法是使用jQuery的ajax或load方法。但是,如果出于某些原因不想只为一个方法加载整个库,那么可以使用原生XMLHTTPRequest获取图像数据,并对其执行任何操作。这里是doc:HTML5很好,但是errorFunction()应该做什么;是你能举一个例子说明errorFunction()会生成错误消息吗?是否可以通过指定相对地址重定向,而不知道网站的地址,但从地址栏中的当前URL获取?window.location.href包含当前href(或路径)。您可以尝试
window.location.assing(window.location.href+'inner page.html')
window.location.origin包含站点的第一部分,例如:如果您位于
http://google.com/search?q=something
。。。window.location.origin将仅返回
http://google.com
HTML5很好,但是应该做什么errorFunction();是你能举一个例子说明errorFunction()会生成错误消息吗?是否可以通过指定相对地址重定向,而不知道网站的地址,但从地址栏中的当前URL获取?window.location.href包含当前href(或路径)。您可以尝试
window.location.assing(window.location.href+'inner page.html')
window.location.origin包含站点的第一部分,例如:如果您位于
http://google.com/search?q=something
。。。window.location.origin将仅返回
http://google.com