如何检测div元素的内部文本是否发生变化,然后记录日期/时间

时间:2016-03-18 22:13:29

标签: javascript jquery

我的下面似乎很接近但仍然没有在consol.log测试中打印。所以,仍然不完全。我想连续检测我的div元素内容是否已更改 (通过elem的内部文本),记录内部height: 0; width: 0; overflow: hidden;和{{1变更的{1},以及发生这种情况时的文档text

date

这里是FIDDLE。 Cheerio。

1 个答案:

答案 0 :(得分:1)

我看到的是,你的if条件永远不会被满足,因为你没有比较,你正在分配。没有它,代码按预期运行。所以,你需要纠正它。

$(function() {

var element = document.querySelector('.pet-name'); 

// create an observer instance
var observer = new MutationObserver(function(mutations) {
      var petname = $('.pet-name').text();
      var referrer = document.referrer;

      var date = new Date();
      var month = date.getUTCMonth() + 1;
      var day = date.getUTCDate();
      var year = date.getUTCFullYear();

      var time = date.toLocaleTimeString();
      var formattedDate = month + '/' + day + '/' + year;
      
	  console.log(referrer); 
	  console.log(petname); 
	  console.log(time); 
	  console.log(formattedDate);   
});
 
// configuration of the observer:
var config = { attributes: true, childList: true, characterData: true };
 
// pass in the target node, as well as the observer options
observer.observe(element, config);
 

setTimeout(function() {
    $('.pet-name').text('Huge Fat Cat');
}, 1000);


    	
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="pet-name">
Big Fat Dog
</div>