Below is my javascript code:
<script>
var id = setInterval(function () {
var t = '<%=this.time%>';
var a = '<%=this.arrival%>'; //getting arrival time
var d = '<%=this.departure%>'; //getting departure time
var startTime = new Date(t);
var endTime = new Date(a);
var difference = endTime.getTime() - startTime.getTime();
var arrivalInMinutes = Math.round(difference / 60000);
startTime = new Date(t);
endTime = new Date(d);
difference = endTime.getTime() - startTime.getTime();
var dipartureInMinutes = Math.round(difference / 60000);
if ((arrivalInMinutes <= 2) && (dipartureInMinutes >= -2)) {
//blink code
if (document.getElementById) {
var obj = document.getElementsByTagName("BLINK");
for (var i = 0; i < obj.length; i++) {
if (obj[i].style.visibility == "hidden") {
obj[i].style.visibility = "visible";
//obj[i].style.color = "red";
} else {
obj[i].style.visibility = "hidden";
}
}
}
}
else {
clearInterval(id);
}
}, 500);
</script>
I want to call the above code(which is inside javascript) inside another function named "doBlink()" in place of SetInterval function,
and want to use SetInterval function inside another function named "StartBlink()"
I also tried below code, but then my code is not working:
<script>
var nIntervId;
function StartBlink() {
nIntervId = setInterval(doBlink(), 500);
alert("Hello");
}
function doBlink() {
var t = '<%=this.time%>'; //getting system current date time
var a = '<%=this.arrival%>'; //getting arrival time
var d = '<%=this.departure%>'; //getting departure time
//var id = setInterval(function abc() {
var startTime = new Date(t); //getting current time
var endTime = new Date(a); //passing the arrival time of train
var difference = endTime.getTime() - startTime.getTime(); // This will give difference in milliseconds
var arrivalInMinutes = Math.round(difference / 60000);
startTime = new Date(t);
endTime = new Date(d);
difference = endTime.getTime() - startTime.getTime();
var dipartureInMinutes = Math.round(difference / 60000);
if ((arrivalInMinutes <= 2) && (dipartureInMinutes >= -2)) //if difference is less than 2 minutes
{
//blink code
if (document.getElementById) {
var obj = document.getElementsByTagName("BLINK");
for (var i = 0; i < obj.length; i++) {
if (obj[i].style.visibility == "hidden") {
obj[i].style.visibility = "visible";
obj[i].style.color = "red";
} else {
obj[i].style.visibility = "hidden";
}
}
}
}
//} else {
// clearInterval(id); //code to kill set interval
//}
//}, 500);
}
function clearBlink() {
clearInterval(nIntervId);
}
</script>
Please suggest some way to do that.
Please reply