HTML 对象数据文件(如果未找到)
HTML Object Data file if not found
如下
<object type="text/html" data="a.html">
</object>
如果文件a.html
不存在,则显示为空白。我可以让它指向另一个文件或显示一条文本说a.html
没有找到就像 404 一样吗?
您可以
尝试使用 AJAX 获取文件,检查它是否存在,并根据它创建包含获取内容的object
或在出现错误时放置一些消息:
$.get('a.html').
done(function(data) {
$('body').append('<object type="text/html" data="a.html"></object>');
}).
fail(function() {
$('body').append("<div>file a.html doesn't exist</div>");
});
注:
由于浏览器将缓存
a.html
,因此它不会执行另一次往返来加载对象内容,而是会从缓存中获取对象内容。仅当您的
a.html
与原始页面共享相同的来源(协议、主机、端口)时,这才有效,a.thml
服务器为跨源请求发送特殊的 HTTP 标头
好吧,我知道w3schools不是最受欢迎的参考来源,但他们说该标签支持HTML中的事件属性,其中包括onerror事件。
因此,您应该能够执行此操作:
<object type="text/html" data="a.html" onerror=function() { alert('"a.html" not found'); }>
</object>
编辑 在 MDN 上找到证明有点困难,需要三个链接。 这表示对象是 HTMLElement,这表示 HTMLElements 继承所有 GlobalEventHandler,这包括作为 globalEventHandler 事件的 onerror。
相关文章:
- 如果对象's缺少信息
- 如果对象具有 NUMBER,如何获取 JSON 数据
- 如果对象 id 相同,如何合并对象
- JSON - 如果对象的值等于
- 如果对象使用 reduce、forEach 或筛选器共享属性值,则合并 JSON 数组中的对象
- Javascript,如果对象中存在值
- 如果对象值在数组中是唯一的,请执行此操作
- 如果对象为空字符串,则从 javascript 中的对象中省略该值
- angularjs如果对象为空,则在HTML类中返回一个字符串
- JavaScript获取对象数组的值或属性(如果对象具有该属性)
- 如果对象存在于javascript中,是否有更好的方法来返回它
- 如果对象包含JavaScript中的字母,如何返回该对象
- 如果对象没有'不存在
- 如何测试对象"isEmpty()"如果对象.原型被修改
- 如果对象中的数组内容为空,如何将其设置为false ?
- 如果对象包含在另一个数组中,则从该数组中删除该对象
- 如果对象属性不存在,则创建普通变量回退的Javascript
- 如果对象取自数组,则不能访问属性
- React-Native:如果对象未定义,则传递if语句
- 如果对象名称中包含句号,如何提取Json对象的值