Javascript 警报:如果消息包含某个单词,则阻止
Javascript alert: block if message contains certain word?
我有一个调用数据库的Web应用程序。每隔一段时间,我们就会收到一个javascript警报对话框,说事务已死锁。老实说,我们不在乎这种情况是否发生,因为它不是一个交互式应用程序......它只是根据计时器显示数据,如果这次错过了数据,下次可以显示它。
我知道你可以像这样重写警报方法:
window.alert = function alert(msg) {
console.log('Hidden Alert ' + msg);
};
(在 我可以阻止警报() 与谷歌浏览器扩展程序
)我的问题是:有没有办法查看警报的消息是否.contains
特定的单词或短语,如果它忽略警报调用,否则会显示警报?安装扩展来处理这个问题真的不是一种选择。
澄清:
我知道如何捕获它,如果它有或没有,但是如果我过度编写警报代码,我会编写什么代码来继续并正常显示警报?
window.oldAlert = window.alert;
window.alert = function alert(msg) {
if (not msg contains ...)
window.oldAlert(msg);
};
window.default = window.alert;
window.alert = function alert(msg) {
var word = 'foo';
if (msg.indexOf(word) != -1){
console.log('contains');
// do what you wanna do if contains
}else{
window.default(msg);
}
};
alert('foo');
alert('bar');
http://jsfiddle.net/pnkcpvLj/
这是我的方法。
你需要捕获原始的 alert() 函数,以便在需要时可以调用它:
var origalert = window.alert;
window.alert = function(msg) {
if (msg.IndexOf('whatever') >= 0) {
origalert(msg);
} else {
... whatever ...
}
}
相关文章:
- 隐藏/显示包含单词的ul li项目.但只能入住李的子女
- 删除javascript中包含特定单词的行
- AJAX数据包含一个或多个单词.
- 输出包含3个单词的字符串中的前2个单词
- 如何使用d3.layout.cloud.js创建一个包含单词及其权重的csv的单词云
- Javascript(如果var包含一个单词,则仅更改该单词的颜色)
- 如果输入包含数组中的任何单词
- 使用 JavaScript split 来包含单词,标点符号与 span 但忽略 HTML
- 要求文本字段包含特定的单词,使用jquery
- 忽略包含特定单词的模式
- 如何根据链接中包含的字母/单词查找并单击链接
- 大写输入字段中包含的每个单词
- 在包含多个单词的表中搜索
- 如何更正包含ä的大写单词öü
- D3.js~如何过滤包含某些值/单词的数据值
- Javascript Regex检查字符串是否包含不属于的单词
- 如何选择不包含某个子元素的元素
- 如何使用javascript将高亮显示的单词包含在带有一些标签的文本区域中
- 检查字符串是否包含某段文本
- 匹配一个没有't包含某个子字符串