`
zhangyaochun
  • 浏览: 2608855 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

关于script标签的onerror事件

阅读更多

其实写过jsonp相关api或者了解jsonp原理的同学其实都知道其实作为跨域的一种比较好的方式,其实还是有很多“缺陷”的。

 

 比如:

 

  • 无法使用POST进行提交
  • 异常处理
其实当然很多人也了解过script标签部分支持onerror事件

兼容性相关

  • IE9|10  FF Safari  Chrome   支持
  • IE6-8 Opera  不支持

关于如何判断浏览器是否支持script的onerror,可以查看司徒正美的 http://www.cnblogs.com/rubylouvre/archive/2011/02/12/1952160.html


同样很多人和我一样会问,那我们想做到兼容基本所有浏览器的异常处理咋办呢?

 --------  先介绍一下从司徒那边看到的一个方案:

JSONP的回调函数总是在script的onload事件(IE的onreadystatechange)之前就被调用,因此在回调执行之时,为script标签增加一个属性,然后等到onload发生的时候,检查有没有这个属性,来以此判定是否请求成功


1
0
分享到:
评论

相关推荐

    VBA 一句代码解决On error goto line 多次使用的问题 .txt

    一句代码解决On error goto line 多次使用的问题 .txt On error goto line 错误跳转语句只能使用一次 本代码只需要加一句即可重复使用错误跳转 On error goto line VBA错误跳转多次使用的问题 On error goto 0 ...

    js注意img图片的onerror事件的分析

    在JavaScript中处理img元素加载图片时,onerror事件是一个非常重要的错误处理机制,它在图片加载失败时触发。然而,如果不正确地使用onerror事件处理器,可能会导致程序行为不正确,甚至出现栈溢出(Stack overflow...

    动态给head添加script

    script.onerror = function() { console.error('脚本加载失败'); }; ``` 4. **将`<script>`添加到`<head>`** 最后,我们将创建好的`<script>`元素插入到`<head>`标签中。可以使用`document.head.appendChild...

    解析img图片没找到onerror事件 Stack overflow at line: 0

    然而,当图片无法加载或找不到时,浏览器会触发 `onerror` 事件。这个事件允许开发者定义当图片加载失败时执行的备用操作。在本文中,我们将深入探讨 `onerror` 事件,以及如何处理图片未找到导致的 "Stack overflow...

    java script error 问题最终解决 see more details

    通过修改`onerror`事件处理函数、使用自定义错误处理函数以及确保系统和浏览器是最新的版本,可以有效地处理这类问题。此外,利用开发者工具、检查HTML结构、进行代码审查和编写单元测试也是确保代码质量的重要步骤...

    JS使用onerror捕获异常示例

    首先,在`<script>`标签中,我们定义了一个onerror事件处理器,名为handleErr。在这个函数中,我们接收了三个参数:错误消息msg、错误发生的URL url和错误代码行号line。然后通过拼接字符串,把错误信息展示给用户,...

    用Javascript判断图片是否存在,不存在则显示默认图片的代码

    ### 使用image对象的onerror事件 可以通过`onerror`事件来判断图片是否存在。具体做法是将图片的`src`属性设置为需要检测的图片地址,然后通过`onerror`事件来处理图片加载失败的情况。如果图片加载失败,`onerror`...

    VB script 人机交互界面设计

    使用On Error语句可以设置错误处理机制。当发生错误时,可以决定是否停止程序运行,或者执行特定的错误处理代码。 7. **内置函数与过程** VB Script提供丰富的内置函数,如InStr()用于查找子字符串,Len()用于...

    how-to-load-dynamic-script, 加载动态脚本的正确方法.zip

    可以为`<script>`元素添加`onload`和`onerror`事件监听器: ```javascript script.onload = function() { console.log('脚本已成功加载'); // 在这里执行依赖于新脚本的代码 }; script.onerror = function() {...

    Visual Basic Script 语言用户指南

    6. **错误处理**:通过On Error语句进行错误处理,可以设置错误处理模式,如On Error Resume Next和On Error GoTo 0。 7. **对象模型**:VBScript通过ActiveX技术,可以访问和操作系统提供的各种对象,如WScript...

    记录几种XSS绕过方式1

    如果过滤规则未考虑大小写,攻击者可以将敏感关键字如`onerror`或`script`改写为大写或小写,如`<ScRiPt>alert(1)</ScRiPt>`,或者`<img src=1 ONeRror=alert(1)>`,以此来规避过滤。 3. 进制代替: 在JSON等数据...

    动态创建script标签实现跨域资源访问的方法介绍

    3. **事件监听**:虽然`<script>`标签本身不支持`onload`或`onerror`事件,但可以通过给父元素添加事件监听器来检测脚本是否已加载完成。在本例中,`login.jsp`会返回一段包含`myloginState`函数调用的JavaScript,...

    js中window对象的事件1

    在跨域脚本中,浏览器出于安全考虑,可能不会提供详细的错误信息,此时你需要在服务器端设置`Access-Control-Allow-Origin`头信息,并在`<script>`标签中添加`crossorigin`属性,以允许跨域错误信息的传递。...

    Struts2标签集锦(附Struts2标签详解word文档)

    此外,Struts2标签还支持各种事件处理和验证,如`onerror`属性用于指定错误处理方式,`validate`属性控制是否执行验证。对于输入验证,开发者可以通过注解或XML配置文件定义验证规则,然后在表单提交时自动执行。 ...

    学习电脑信息动易出现javascripterrordescription缺少对象的完美解决方案

    这里的改动是改变了`window.onerror`事件处理函数的行为。原本的代码会在遇到错误时弹出一个确认对话框,而新的代码将简单地忽略错误,允许页面继续运行,从而解决了错误提示的问题。 3. **更新和修复库文件**:在...

    JavaScript错误处理

    1. **onerror事件处理函数**:这是JavaScript最早的错误处理机制之一,当在页面上发生错误时,会在`window`对象上触发`error`事件。例如,我们可以在`<script>`标签内设置`onerror`回调函数,以弹出错误提示。为了...

    vue动态加载外部依赖js代码实现

    - 添加错误处理机制,如监听`onerror`事件。 - 提供更灵活的配置选项,如允许用户自定义`<script>`标签的其他属性。 7. **最佳实践** - **异步加载**: 在需要加载较大文件或非关键路径资源时,推荐使用异步加载...

    script_Vbscript_4321_

    标题 "script_Vbscript_4321_" 暗示了这是一个关于VBS(Visual Basic Script)脚本的集合,可能包含了一系列的VBScript代码示例或问题解决方案。描述中的"关不掉的窗口1关不掉的窗口2关不掉的窗口3关不掉的窗口4求...

    JavaScript与服务器通信方法示例

    JSONP的工作原理是通过在script标签的`src`属性中设置一个动态生成的函数调用,而服务器返回的则是这个函数的参数,通常是JSON格式的数据。例如: ```javascript let script = document.createElement('script'); ...

    JavaScript入门教程(11) js事件处理

    这里,事件处理程序被直接写在`<script>`标签中,并且指定了针对`window`对象的`onload`事件。 3. **方法三:在JavaScript中说明**。这种方式更灵活,可以在JavaScript代码中动态绑定事件处理程序。例如: ```...

Global site tag (gtag.js) - Google Analytics