页面如下:
<html>
<span id="somespan">1000</span>
</html>
somespan的值每1或2分钟增加一次。
使用Javascript / JQuery,如何每5分钟检查一次值是否相同或增加。
我的意思是,值是1000,然后是2分钟后的16分钟,所以值是1200。
如何检查它是否已更改。
我想做类似的事情:
var somespan = $("#somespan").text();
if(somespan isnt changed) {
#console.log('still same.')
}
我将使用此代码的平台是Google Chrome-> Tampermonkey
答案 0 :(得分:1)
您可以实现MutationObserver,但这也可以实现。
var current_value = null;
setInterval( function() {
if( current_value != null ) {
if( current_value != $('#somespan').text() ) {
console.log('Value has changed!');
}
}
current_value = $('#somespan').text();
}, 1000 );
// For testing only
$('input').on('input', function() {
$('#somespan').text( $(this).val() );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="somespan">1000</span>
<!-- For testing only -->
<br/>
<input type="text" value="1000">
答案 1 :(得分:0)
迷你阵列怎么样?要保留上一个值并使用添加的每个新值进行重置。
// Global Variables
var somespan = document.getElementById("somespan");
// Global Variables => Array Values
var somespan_arr = [];
// Interval / Time function to check if # changed every 5 seconds
setInterval(function(){
somespan_arr.push(somespan.innerHTML); // Push the initial value into array
if (somespan.innerHTML != somespan_arr[0]) { // Check if prev value is different
somespan_arr = []; // Reset Array back to default or ""
somespan_arr.push(somespan.innerHTML); // Push new value
console.log("Doesn't Match!"); // Logging Results
console.log(somespan_arr); // Logging Results
} else {
console.log("It matches!"); // Logging Results
}
},5000); // 5000 => 5 seconds where 1000 = 1 second
请原谅任何错误,我对Stackoverflow还是陌生的。