什么是javascript中警报功能的替代方案?

时间:2012-08-22 11:30:56

标签: javascript jquery

java脚本中的alert()函数的替代是什么?

我不想使用提醒功能,因为它会显示一些消息。

我只想激活一个函数,当我使用alert()时,函数会激活并显示结果,否则它不会显示任何内容。

请帮忙!

    <script type="text/javascript">

(function () {
    var test = document.createElement('script'); 
    test.type = 'text/javascript'; test.async = true;
    test.src = 'http://mysite.com/plugin/myscript.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(test, s);
  alert("hi");

})();

    </script>

所以上面的代码只有在我添加alert(“hi”)时才会运行,否则它不会。那么如何激活myscript.js代码

6 个答案:

答案 0 :(得分:4)

当然我猜..

alert = function(msg) {};

现在警报不执行任何操作,也不会显示弹出对话框。

如果您想将任何绑定alert对话框的消息转移到您自己的功能上,比如说 - 记录器 - 您可以这样做:

function log(msg) {
  console.log(msg);
  yourOwnFunction(); // You can call and functions if you want.
};

alert = log;
alert("Error!");

"Error!"现在出现在控制台日志中而不是弹出窗口中。

修改

无论如何,这里的所有字符串都是 literal ,为什么不把它放在脚本之前:

<script type="text/javascript" src="http://mysite.com/plugin/myscript.js" async="async"></script>

答案 1 :(得分:3)

您是否在寻找alert()的替代品?试试console.log();

答案 2 :(得分:2)

试试这个

 window.alert = function(x) {
        // this function executed when you call alert function;
        // x=>message given in alert function
 }

答案 3 :(得分:2)

您可以随心所欲地覆盖alert

window.alert = function(x) {
    customMessageDialog(x);
};

请注意,您将无法模拟alert的脚本阻止行为,因此替换它可能不安全。

如果您只是想在每次发出警报时做一些额外的事情,但仍然使用警报及其阻止特性,您可以执行以下操作:

window.alertOld = window.alert;
window.alert = function(x) {
    customAction(x);
    window.alertOld(x);
};

答案 4 :(得分:1)

2012年没有理由使用警报。您还有很多其他选择:

  1. 浏览器的控制台。试试console.log()
  2. 使用日志框架。 Here is a list。它们通常会在显示日志消息的地方显示div以及大量过滤它们的选项。

答案 5 :(得分:0)

好吧,如果你想查看某个函数的结果但又不想将其视为警报,请尝试console.log(),这将在javascript控制台中显示输出