之前遇到这样的一个问题: 客户要求让接收到信息之后按钮闪烁, 其实原理很简单就是每隔固定时间去调用接口,查看返回状态,根据状态去判断是否让按钮背景色改变。 如果改变的时候就让模拟闪烁:话不多说,撸demo:
<script type="text/javascript">
<a class="easyui-linkbutton" iconcls="icon-down" plain="true" href="#" οnclick="receivebom()" id="receivebom">物料</a>
$(function () {
receiveSicada(); setTimeout(showdeng, 1000); //选择调用时间每隔1秒
});
function showdeng() { if (status > 0) { if (status == 1) { $("#ComeCar").css("background-color", "#00ff90"); status = 2; } else { $("#ComeCar").css("background-color", "#ff6a00"); status = 1; } } else { $("#ComeCar").css("background-color", ""); } meter1 = setTimeout(showdeng, 500); }
function showdeng() { if (status > 0) { if (status == 1) { $("#ComeCar").css("background-color", "#00ff90"); status = 2; } else { $("#ComeCar").css("background-color", "#ff6a00"); status = 1; } } else { $("#ComeCar").css("background-color", ""); } meter1 = setTimeout(showdeng, 500); }
//定时接收接口返回的消息 function receiveSicada() { $.get("ajax/BomAjax.ashx?action=Get_ByCPathCount", function (data) { if (data.Status != 0) { if (status == -1) { status = 1; } } else { status = -1; } setTimeout(receiveSicada, 30000) });
</script>
主要使用的事timeOut这个事件