Dzwebs.Net

撰写电脑技术杂文十余年

js aler重写 不弹出

Admin | 2016-6-4 9:11:40 | 被阅次数 | 4564

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  最近遇到个纳闷的事,本人在使用qrcode库中的decode方法对图片上的二维码进行解码,即读取图片中的二维码信息。该方法老是会弹出两次对话框。弹出的对话框很烦人,因为本人只想要弹出的信息内容,而不是对话框的弹出。因此,想到了一种方法,即截取decode方法弹出的对话框的内容,同时,让对话框无法弹出。即截取了内容,同时又让对话框不再弹出,实在是妙极。

  为解决该问题,想了不少方法,偶然间,看到了js aler重写的例子,经过研究与修改,终于实现效果,下面与大家分享js aler重写是如何实现的。

  首先,JS代码中,要包含如下的代码。

  var oldAlert = window.alert;
  window.alert = function(msg)
  {
      if(msg.indexOf("成功")!=-1)
      {
          oldAlert(msg);
      }
      else
      {
          return;
      }
  }

  上面的代码会导致页面中的所有JS对话框都不会弹出,任何时候任何事件都不会弹出对话框,但是有一种情况例外,那就是,当原对话框中的信息包含“成功”二字时,那么,该对话框就可以弹出,其它都一概不会弹出。

  你可以通过下面的函数验证其法是否可行:

  function MyAlert()
  {

   alert("大众计算机学习网欢迎您");

   alert("希望有一天也能成功,加油");
    
  }

  知识拓展:恢复alert

  上面的代码与功能,是重写了alert,那么,又如何恢复原来的alert对话框,让其能正常弹出信息呢?很多地方都这样使用。

  delete(window.alert);
  alert(1);

  可是本人未觉得其可行之处,留待与各位再商讨。


该杂文来自: 网页制作杂文

上一篇:ocrad.js客户端识别图片上的文字

下一篇:不载入图片不显示图片如何获取动态图片的高度宽度

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计