简体   繁体   English

如何使用Javascript在Html页面上添加Timer

[英]How to add Timer on Html page using Javascript

I need to timer on my html page with using javascript. 我需要使用javascript在我的html页面上计时。 But I have <input type="date" /> and timer get the selected date time and control it. 但是我有<input type="date" />并且计时器获得所选的日期时间并控制它。 If the differences between current time and selected time close in for instance last 1 day. 如果当前时间和所选时间之间的差异接近例如最近1天。 Timer show alert message. 计时器显示警报消息。 How can I do this? 我怎样才能做到这一点? I need to compare current time and selected time. 我需要比较当前时间和选定时间。 Thanks for all response. 感谢所有回复。

 function add() { var num = document.getElementById("t1").rows.length; console.log(num); var x = document.createElement("tr"); var a = document.createElement("td"); var anode = document.createTextNode(num + '.'); a.appendChild(anode); x.appendChild(a); a = document.createElement("td"); anode = document.createElement("input"); var b = document.createAttribute("type"); b.value = "checkbox"; anode.setAttributeNode(b); a.appendChild(anode); x.appendChild(a); a = document.createElement("td"); anode = document.createElement("input") var b = document.createAttribute("type"); b.value = "date"; anode.setAttributeNode(b); a.appendChild(anode); x.appendChild(a); a = document.createElement("td"); anode = document.createElement("input"); b = document.createAttribute("type"); b.value = "text"; anode.setAttributeNode(b); a.appendChild(anode); x.appendChild(a); a = document.createElement("td"); anode = document.createElement('input'); anode.setAttribute('type', 'button'); anode.setAttribute('value', 'Delete Row'); anode.setAttribute('onclick', 'deleteRow(this)'); a.appendChild(anode); x.appendChild(a); document.getElementById("t1").appendChild(x); } function deleteRow(e, v) { var tr = e.parentElement.parentElement; var tbl = e.parentElement.parentElement.parentElement; tbl.removeChild(tr); } 
 table { border-collapse: collapse; margin: 10px; } table, td, th { border: 1px solid black; padding: 10px; } 
 <table id="t1"> <tr> <th></th> <th></th> <th></th> <th></th> <th> <input style="padding:10px" type="button" value="Add Row" onclick="add()" /> </th> </tr> <tr> <td>1.</td> <td> <input type="checkbox" /> </td> <td> <input type="date" /> </td> <td> <input type="text" /> </td> <td> <input type="button" value="Delete Row" onclick="deleteRow(this)" /> </td> </tr> </table> 

I am hoping that I understood your question correctly - It sounds like you would like to notify the user if the date that they select is x number of days after (or before? This was unclear) the current date. 我希望我能正确地理解你的问题 - 听起来你想通知用户他们选择的日期是否是当前日期之后(或之前?目前还不清楚)的x天数。

If that is the case, this should work for you. 如果是这种情况,这应该对你有用。 I set the limit to 2 days before or after the current date - so if there is a difference of at least +/- 2 days from the current date, you will get an alert. 我将限制设置为当前日期之前或之后的2天 - 因此,如果与当前日期之间存在至少+/- 2天的差异,您将收到警报。

This fires when the date input's value is changed 当日期输入的值更改时,将触发此操作

 $(document).ready( function() { // When date input value is changed... $('.date').change( function() { // Create Date object for current date and date selected by user var today = new Date(); var selectedDate = new Date( $(this).val() ); // Use UTC to prevent daylight savings, etc. errors var milliseconds = 86400000; var utcToday = Date.UTC(today.getFullYear(), today.getMonth(), today.getDate()); var utcSelected = Date.UTC(selectedDate.getFullYear(), selectedDate.getMonth(), selectedDate.getDate()); // Get difference (in days) between dates var result = Math.floor((utcSelected - utcToday) / milliseconds); // Check result, alert if at least +/- 2 days from current date if(result >= 2 || result <= -2) alert("2+ days difference between current date and selected date"); }); }); 
 <!-- Include jQuery... assuming this is ok since you tagged this question with jQuery --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <!-- Added class "date" to input --> <input class="date" type="date" /> 

You could use setTimeout this will essential call the specified function after the given milliseconds in this case after 3 seconds it will call myFunction. 您可以使用setTimeout这将在给定的毫秒后调用指定的函数,在这种情况下3秒后它将调用myFunction。

<button onclick="setTimeout(myFunction, 3000)">Try it</button>

<script>
function myFunction() {
    alert('Hello');
 }
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM