在实际网页上显示Chrome控制台内容

时间:2018-03-24 04:06:13

标签: javascript html firebase-realtime-database

我想在'Canteen'标签内的chrome控制台上显示这些结果,但我没有这样做。已尝试使用列表ID Chrome console

这是代码:

var database = firebase.database();
var msgRef = firebase.database().ref('survey');

msgRef.on("child_added",function(snapshot) {
  var changedPost = snapshot.val();
  console.log(changedPost)  
});

var ids = 'IDs: ';
$('[show_survey]').each(function () {
    ids += this.id + ' ';
});

$('#results').text(ids);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id = "survey" style="background:white;float:center;height:70%;width:80%;margin:10%;border-radius:20px;">
  <h1 id="fireHeading" align="center">CANTEEN SURVEY</h1>
  <div id = "contact" style="margin-right:50%;">
    <p>
      <ul id = "show_survey"></ul>
    </p>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

您可以覆盖console.log()

的默认实现

您的工作基本上是覆盖console.log()的默认实施。

代码说明: 您在if条件中检查脚本中的控制台日志,如果是,则检索日志并将其放入旧变量。 然后,您声明另一个名为logger的变量,并将其链接到名为log的HTML div标签。 更进一步,它将检查消息是否为对象。如果它是一个对象,它将stringify(将JSON对象转换为字符串)并将值返回给logger变量。否则,如果它不是对象,则表示它已经是一个字符串。因此,在else语句中,它将消息变量返回给logger变量。 logger变量将在HTML内容中作为div日志发布。

您可以尝试类似下面给出的功能。

(function () {
    if (!console) {
        console = {};
    }
    var old = console.log;
    var logger = document.getElementById('log');
    console.log = function (message) {
        if (typeof message == 'object') {
            logger.innerHTML += (JSON && JSON.stringify ? JSON.stringify(message) : String(message)) + '<br />';
        } else {
            logger.innerHTML += message + '<br />';
        }
    }
})();

console.log("ChangePost Value");
<div id="survey" style="background:white;float:center;height:70%;width:80%;margin:10%;border-radius:20px;">
  <h1 id="fireHeading" align="center">CANTEEN SURVEY</h1>
  <div id="contact" style="margin-right:50%;">
    <div id="log"></div>
    <p>
      <ul id="show_survey">
      </ul>
    
  </div>
</div>