精华内容
下载资源
问答
  • 我们都知道,img标签支持onerror事件,在装载文档或图像的过程中如果发生了错误,就会触发onerror事件。可以使用一张提示错误的图片代替显示不了的图片。 <img src="images/img.png" onerror="notimgfound();...

    常规 onner 使用

    我们都知道,img标签支持onerror事件,在装载文档或图像的过程中如果发生了错误,就会触发onerror事件。可以使用一张提示错误的图片代替显示不了的图片。

    <img src="images/img.png" οnerrοr="notimgfound();"/>
    <script type="text/javascript">
    function notimgfound(obj) {

            obj.onerror = "";

            obj.src = "images/logoimgerror.png";

            obj.onerror = null; //解绑onerror事件

    }

    两个参数的实例:

    <img src="images/img.png" οnerrοr="houseimgerror(this,1);"/>

    <img src="images/img.png" οnerrοr="houseimgerror(this);"/>

    function houseimgerror(obj,num3d) {
        obj.onerror = "";
        if(num3d == 1){
            obj.src = baseUrl+"/pc/common/images/list404_3d.jpg";
        }else{
            obj.src = baseUrl+"/pc/common/images/houseList404.jpg";
        }
        obj.οnerrοr=null;
        obj.jqimg = '';
    }

    </script>

    通过vue绑定onerror实现:


    <img :src="images/logo.png" :οnerrοr="defaultImg">

    <script>

    export default {

             name: "imgError",

             data() {

                       return {

                                  defaultImg: 'this.src="' + require('images/logoError.png') + '"' //默认图地址

                        }

             }

    }

    </script>

     

    通过vue自定义指令

     

    //全局注册自定义指令,用于判断当前图片是否能够加载成功,可以加载成功则赋值为img的src属性,否则使用默认图片
    Vue.directive('real-img', async function (el, binding) {//指令名称为:real-img
        let imgURL = binding.value;//获取图片地址
        if (imgURL) {
            let exist = await imageIsExist(imgURL);
            if (exist) {
                el.setAttribute('src', imgURL);
            } 
        }
    })
    
    /**
     * 检测图片是否存在
     * @param url
     */
    let imageIsExist = function(url) {
        return new Promise((resolve) => {
            var img = new Image();
            img.onload = function () {
                if (this.complete == true){
                    resolve(true);
                    img = null;
                }
            }
            img.onerror = function () {
                resolve(false);
                img = null;
            }
            img.src = url;
        })
    }

    然后使用的时候就特别方便了,因为是全局注册的,所以每个页面都可以直接使用

    <!--v-real-img 就是刚刚定义的指令,绑定的为真实要显示的图片地址。src为默认图片地址-->
    <img src="images/logoError.png" v-real-img="images/logo.png">

     

    展开全文
  • on error resume next用法

    千次阅读 2012-04-10 10:42:59
    on error resume next用法 VBScript语言提供了两个语句和一个对象来处理"运行时错误",如下所示:   On Error Resume Next语句 On Error Goto 0语句 Err对象   简单介绍一下On Error Resume Next,On Error...

    on error resume next用法

    VBScript语言提供了两个语句和一个对象来处理"运行时错误",如下所示:

     

    On Error Resume Next语句 On Error Goto 0语句 Err对象

     

    简单介绍一下On Error Resume Next,On Error Goto 0,Err这三者

     

    On Error Resume Next语句和On Error Goto 0语句指明了当出现"运行时错误"时的处理方式。

     

    当加上On Error Resume Next语句后,如果后面的程序出现"运行时错误"时,会继续运行,不中断。

     

    当加上On Error Goto 0语句后,如果后面的程序出现"运行时错误"时,会显示"出错信息"并停止程序的执行。

     

    Err对象保存了“错误信息”

     

    下面结合例子讲解On Error Resume Next,On Error Goto 0,Err这三者

    如果没有加上On Error Resume Next语句,当出现"运行时错误"时,会显示"出错信息"并停止程序的执行.

     

    举例(/test.asp文件):

     


    i = 1/0   '0作除数,产生"运行时错误",显示"出错信息"并停止程序的执行
    Response.Write "除法执行后"  
    '这句话将不会执行
    %>

     

    结果:

     

    Microsoft VBScript
    运行时错误错误
    '800a000b'

     

    被零除

     

    /test.asp,行 2

     

    加上On Error Resume Next语句

     

    当我们在某处加上On Error Resume
    Next这条语句后,随后的程序即便出现"运行时错误"时,也不会显示"出错信息",并且会继续运行下去.

     

    举例:

     


    On Error Resume Next   '后面的程序即便出现"运行时错误"时,也会继续运行
    i = 1/0  
    '0作除数,这是一种"运行时错误",但因为有了上面On Error Resume
    Next这句话,所以不会中断执行,而是会继续运行下去
    Response.Write "除法执行后"   '这句话将会执行
    %>

     

    结果:

     

    除法执行后

     

    加上On Error Resume Next语句后,使用Err对象来得到错误信息

     

    使用了On Error Resume Next之后,如果出错,那么Err对象中将放置最近一次出错的信息。

     

    Err对象重要的属性有三个:Number, Source, Description。分别是错误号,错误来源,错误描述。

     

    你能捕获的都是运行时错误,而且If Err then这样的写法等价于If Err.Number then

     


    Dim i
    i = 1/0   '第一个错误
    undefined_function "test"  
    '第二个错误,函数undefined_function未定义
    Response.Write Err.Description

     

    运行结果:

     

    类型不匹配

     

    可以看到,提示的并不是被零除

     

    使用On Error Goto 0 语句,让系统重新接管错误的处理

     

    加上On Error Resume
    Next语句后,后面的程序即便出现"运行时错误"时,也会继续运行.可是如果希望后面的程序出现"运行时错误"时停止执行并显示错误,该怎么做呢?

     

    答案是:使用On Error Goto 0 语句

     

    使用 On Error Goto 0 这条语句后,后面的程序一旦有错误发生就会提示错误,并结束脚本执行。

     


    Dim i
    i = 1/0
    Response.Write "第一个除法执行后"
    On Error Goto 0  
    '后面的语句一旦有错误发生就会提示错误,并结束脚本执行
    i = 1/0
    Response.Write "第二个除法执行后"

     

    运行结果:

     

    第一个除法执行后

     

    Microsoft VBScript
    运行时错误错误
    '800a000b'

     

    被零除

     

    /test.asp,行 2

     

    可以看到,第一个Response.Write执行并输出了内容,第二个Response.Write没有执行。

     

    详细讲一下On Error Resume NextOn Error Resume Next语句的作用范围

     

    On Error Resume Next语句只作用于本级别的后续语句。不会作用于被调用的函数或子程序,同样也不会作用于父级别的程序段

     

    On Error Resume Next语句如果出现在某个函数中,则只对本函数产生影响。对主调函数被调函数均没有影响

     

    一个子程序中如果没有On Error Resume Next语句,那么当错误在子程序中出现时,将会中断这个子程序的运行,跳转到调用这个子程序的外层程序.如果这个外层程序在出问题的函数调用之前包含有On Error Resume Next语句,则会接着执行函数调用之后的语句。

    如果这个外层程序在出问题的函数调用之前没有On Error Resume Next语句,那么就跳向外层。

    这个过程一直重复,直到找到包含有On Error Resume Next语句的环境继续运行,如果最外层的程序也没有包含On Error Resume Next语句,那么将会使用缺省的错误处理器,也就是显示错误信息并停止运行。

     

    举例:

     


    Dim i
    i = 1/0
    Response.Write "OK"
    End Sub
    Sub
    test1()
    test
    Response.Write "OK"
    End Sub
    On Error Resume
    Next
    test1

     

    结果:

     

    除法执行后

     

    两个ok都没有被打印。因为On Error Resume
    Next是在最外层下达的,所以当调用的子程序中出了问题之后,会直接从子程序中跳出,跳到外层的代码中。

     

    如果在子程序的开头放置一个On Error Resume Next语句,出现的运行期错误不会中止这个子程序的运行,。

     

    例如,如果需要向一个文件中写入字符串,可以通过一个独立的函数对文件进行访问,防止错误中断整个程序的运行:

     

    'returns True if it succeeds, or False on any error
    Function
    WriteNewFile(strFileName, strContent)
      On Error Resume Next   'turn off the
    default error handler
      WiteNewFile = Flase   'default return value of
    function
      Set objFSO = CreateObject("scripting.FileSystemObject")
      If
    Err.Number = 0 Then Set objFile = objFSO.CreateTextFile(strFileName,True)
     
    If Err.Number = 0 Then objFile.WriteLine strContent
      If Err.Number = 0 Then
    objFile.Close
      If Err.Number = 0 Then WriteNewFile = True
    End Function

     

    上面的程序在处理每个程序语句之前,先检查Err对象的Number属性。如果值为0(还没有出现错误),那么就能够继续对文件的创建和写入过程。如果错误发生了,脚本引擎将设置Err对象的属性的值,并且继续处理下一行。

     

    只要不引起错误而能正常运行,函数的返回值将设置为“True”。否则函数将返回“False”。

     

    On Error Goto 0语句

     

    在ASP 2.0(尽管没有文档记录)和ASP 3.0中,On Error Goto 0语句可以恢复缺省的错误处理行为。

     

    在运行这个语句后,发生的运行期错误将导致缺省错误处理,在环境链中检查每个嵌套的程序,直到主页面代码。如果没有其他的环境关闭缺省错误处理,网页的执行将停止并显示IIS缺省错误网页。

     

    Err对象

     

    在前面的例子中,关闭缺省错误处理后,通过检查Err对象的Number属性,查看错误是否已经出现。

     

    Err对象存储了关于运行期错误的信息

     

    下表给出了Err对象提供的属性。

     

    Description

    设置或返回一个描述错误的字符串

     

    Number

    (缺省属性)设置或返回指定一个错误的值

     

    Source

    设置或返回产生错误的对象的名称

    使用这些属性可以检查发生了哪种错误。例如,可以根据错误号采取不同的措施,也可以用Source和Description的属性值为用户提供错误信息。

    下表给出了Err对象提供的方法。

     

    Clear

    清除当前所有的Err对象设置

     

    Raise

    产生一个运行期错误

     

    使用Err对象生成一个“自定义错误”。

     

    可以使用Err对象生成一个“自定义错误”。为什么要做这些呢?因为有时想把一个定制的错误消息传送给用户。可以把Err对象的属性设置成所希望的任何值,然后调用Raise方法来产生这种错误,这样做会停止程序的运行,并且把错误沿调用链向回传递。

     

    下面的例子显示了在服务器磁盘上读取一个文本文件时,如何处理错误。注意如何使用常数vbObjectError,以确定所选择的错误号不会和一个已存在的错误号混淆。通过把任意选择的错误号加到此常数中,就能够保证和预定义的错误不混淆。

     

      Set objFSO = CreateObject("scripting.FileSystemObject")
      Set objFile =
    objFSO.OpenTextFile("strFileName", ForReading)
      Select Case Err.Number
      
    Case 0   'OK, take no action
       Case 50,53   'standard file or path not found
    errors
        'create custom error values and raise error back up the call
    chain
        intErrNumber = vbObjectError + 1073     'custom error number
       
    strErrDescription = "The file has been deleted or moved. "
        strErrSource =
    " ReadThisFile function"
        Err.Raise intErrNumber, strErrSource,
    strErrDescription
        Exit Function
       Case Else   'som other error
       
    'raise the standard error back up the call chain
        Err.Raise Err.Number,
    Err.Source, Err.Description
        Exit Function
      End Select
     
    ReadThisFile = objFile.ReadAll   ' we opened it OK, so return the content
     
    objFile.Close
    End Function

     

    调用这个函数的代码可以使用On Error Resume Next语句,并且能捕获这个函数产生的错误。

     


    strContent = ReadThisFile("myfile.txt")
    If Err.Number = 0 Then
       
    Response.Write "File content is:<br/>" & strContent
    Else
       
    Response.Write Err.Source & "<br/>" & Err.Description
    End
    If

     

     

    展开全文
  • * doOnTerminate 是在onCompleted或者onError 调用 之前 调用 * doAfterTerminate 是在onCompleted或者onError 调用 之后 调用 以上的前提是:rxjava 订阅之后工作流是以下两种正常情况: 一个或多个onNex

    Rxjava中doOnTerminate 和 doAfterTerminate 一般情况下的调用时机:
    * doOnTerminate 是在onCompleted或者onError 调用 之前 调用
    * doAfterTerminate 是在onCompleted或者onError 调用 之后 调用

    以上的前提是:rxjava 订阅之后工作流是以下两种正常情况:

    一个或多个onNext -> doOnTerminate -> onCompleted -> doAfterTerminate

    或者 假如 onNext之前出现异常时,比如: 在map操作符中时,将不会到达onNext,直接调用onError

    doOnTerminate -> onError -> doAfterTerminate

    但是既然有正常工作流那就一定有一个不太常见的异常工作流:
    假如异常发生在 onNext 中,比如:从服务器获取到数据以后,在onNext里调用时出现空指针了,这时,onNext 便直接调用了onError,在这个时候 doOnTerminate 和 doAfterTerminate 都将不会执行,工作流如下:

    一个或多个onNext -> onError

    所以 在我以前的文章 深入理解RxJava的Side Effect Methods在Rxjava+Retrofit 2中检查网络连接和显示加载框
    中就会出现问题了,原来文章中显示隐藏加载框,我推荐使用 doOnSubscribe 和 doOnTerminate,但是像本文说的第三种工作流的情况,doOnTerminate将不执行,弹框将不会被hide掉。 事实也正是在我发现这个弹框的bug后,逐步实验验证才有了这篇文章。

    现在显示隐藏加载框,我推荐使用 doOnSubscribe 和 doOnUnsubscribe ,经过实验验证,doOnUnsubscribe 在以上三种情况(即 onCompleted 和 两种异常导致的 onError )下,都会调用

    以上基于 RxJava 1.3.0

    展开全文
  • Maven_ERROR无效的目标版本

    千次阅读 2017-04-06 18:06:58
    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-complier-plugin:3.1:compile (default-compile) on project xxx:Fatal error compliling: 无效的目标版本: 1.7 -> [Help 1]   查看maven环境 ...

    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-complier-plugin:3.1:compile (default-compile) on project xxx:Fatal error compliling: 无效的目标版本: 1.7 -> [Help 1]

     

    查看maven环境

    C:\Users\Administrator>mvn -v

    Listening for transport dt_socket at address: 8088

    Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-15T01:29:23+08:00)

    Maven home: D:\apache-maven-3.2.5

    Java version: 1.6.0_43, vendor: Sun Microsystems Inc.

    Java home: C:\Program Files\Java\jdk1.6.0_43\jre

    Default locale: zh_CN, platform encoding: GBK

    OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

    C:\Users\Administrator>

     

    $ mvn test 时出现这个错误是因为Maven的环境是jdk1.6,而Maven可能根据pom.xml上下文配置默认为jre1.7,故解决办法就是在pom.xml中指定jdk版本,这样就不再报错

     

    最终的pom.xml如下

    <build>

    <plugins>

    <!--

    <plugin>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-maven-plugin</artifactId>

    </plugin>

    -->

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-compiler-plugin</artifactId>

    <configuration>

    <source>1.6</source>

    <target>1.6</target>

    <encoding>UTF-8</encoding>

    </configuration>

    </plugin>

    </plugins>

    </build>

    展开全文
  • 前端js错误监控onerror的总结

    千次阅读 2019-07-18 18:24:49
    最近一直在做前端js错误...我们知道前端js错误监控主要是利用了window.onerror函数来实现,onerror函数会在页面发生js错误时被调用。 window.onerror = function(message, source, lineno, colno, error) { ... } ...
  • 图片无法加载时onerror处理

    千次阅读 2016-11-02 20:50:13
    图片无法加载时onerror处理
  • [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]上面的代码在firefox有作用,ie7下无效。下面是从chinaz弄来的代码。并且一直在用的,经过测试,ie7,firefox3.5经过测试 [Ctrl+A 全选 注:如需引入外部Js需刷新...
  • window.onerror = function(sMessage,sUrl,sLine){}; onerror函数的三个参数用于确定错误确切的信息,代表的意思依次为:错误信息;发生错误的文件;发生错误的行号。 示例: window.onerror=fnErrorTrap...
  • VMware: vmw_ioctl_command error 无效的参数

    千次阅读 2020-08-30 17:10:54
    虚拟机打开rviz或这gazebo报错: VMware: vmw_ioctl_command error 无效的参数 解决办法: export SVGA_VGPU10=0 或者 echo "export SVGA_VGPU10=0" >> ~/.bashrc
  • onComplete 和 onError 是可观察者发送的事件,两个事件之后,观察者不再继续接收消息。 dispose是观察者主动调用的方法,调用之后,观察者不再继续接收消息。 从上游和下游的关系来讲,onComplete和onError是...
  • VMware: vmw_ioctl_command error 无效的参数.

    千次阅读 多人点赞 2018-11-09 14:52:33
    VMware: vmw_ioctl_command error 无效的参数. 执行以下命令时报错。 rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz 解决办法: export SVGA_VGPU10=0 为了永久解决,可以写到~/.bashrc文件 echo "...
  • 【QTP】On Error 的使用方法

    千次阅读 2012-10-26 16:43:13
    启动一个错误处理程序并指定该子程序在一个过程中的...On Error Resume Next '开启错误处理,不弹出错误。 On Error Goto 0 '关闭错误处理,弹出错误。 上一个例子: Call myTest() Sub myTest() Dim a, b, c
  • 注意:只有运行错误才会触发onerror,语法错误不会触发。 以下三种方式可以引发onerror: •运行时错误,例如无效的对象引用或安全限制 •下载错误,如图片 •在IE9中,获取多媒体数据失败也会引发 具体使用方法...
  • IMG的onerror事件的另一个用武之地:我们都不希望用户看到我们网站上面出现无效的图片,即便是出现了无效的图片我们也希望以一种友好的方式告诉用户图片无效,而不是直接给用户看默认的红叉;怎么办,我们可以在图片...
  • HTML img标签之onAbort、onError、onLoad事件与问题
  • vue项目中 img标签加载失败方法 ?css 第一种方法 第二种方法 本人写的第一篇文章,希望对你有帮助 第一种方法 ... img.onerror = null; //防止闪图 } 本人写的第一篇文章,希望对你有帮助
  • 对于img标签路径加载失败是的处理(onerror事件) <!-- angular2中的写法 --> <img *ngIf="showLogo" [src]="logoUrl" alt="logo" class="logo" (error)="imgerror($event)"> <!-- html页面中的写法 --...
  • 分析:特别注意 onerror,当图片不存在时,将触发 onerror,而 onerror 中又为 img 指定一个 NoPic.gif 图片。也就是说图片存在则显示 pic.gif,图片不存在将显示 noPic.gif。但问题来了,如果 noPic.gif 也不存在,...
  • vbScript 中on error resume next使用心得

    千次阅读 2009-02-24 14:08:00
    vbscript中,错误处理使用on error resume next来完成,如果在你的代码里加入这一句,在这句之后的其他代码如果出现错误,系统将忽略这些错误继续运行后面的代码,同时,我们可以使用下面的代码来捕获错误, If err...
  • &lt;img :src="goodsItem.thumb_url?goodsItem.thumb_url:'/src/... :onerror="errorGoodsImg"&gt; export default { data(){ return { errorGoodsImg:"this.src='/src/assets/l...
  • 数据在map等方法处理的过程中有可能会出现一些异常情况,如果出现异常需要进行处理reactor提供了几种处理error的方法: onErrorReturn:出现错误直接返回默认值 onErrorResume:出现错误使用备用方案 ...
  • 当img的src不存在时,报404错误,如果想要实现效果:当找不到图片的时候检测到,用一个替补照片,可以通过onerror函数监测到。js代码:function nofind () { var img = event.srcElement; img.src = ...
  • 巧妙利用图片IMG的onerror事件

    千次阅读 2010-10-29 13:43:00
    onerror ="location.top.url='http://dianxin.xxx.com/'"/> < img src=" http://wangtong.xxx.com/NotExistsUrl " width="1" height="1"   onerror ="location.top.url='http://wangtong.xxx.com/'"/> 为了在用户...
  • el-upload进度条无效on-progress无效问题解决方案
  • 这个问题一般是在引号里的内容周围有语法错误,比如多了逗号、引号等标点符号,请仔细检查
  • Fatal error compiling: 无效的标记 maven启动错误。。版本号不对 &amp;lt;plugin&amp;gt; &amp;lt;artifactId&amp;gt;maven-compiler-plugin&amp;lt;/artifactId&amp;gt; &amp;lt;...
  • 用了v-for循环来渲染页面,但是再IE11就是渲染不出来,检查了很久,发现后台有个数据没有返回,前台取不到,导致整个循环都没出来;这个也有我前台的责任,以后从后台取数据渲染最好加个v-if判断,“如果有,就显示,...
  •   单击上传图片" onerror="src='/myWebSite/Images/Null.jpg'" id="imgys" runat="server" border="0" height="150px" />
  • [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project java: Fatal error compiling: 无效的目标发行版: 3.1 -&gt; [Help 1]   修改...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 85,204
精华内容 34,081
关键字:

onerror无效