今天做项目,其中有个功能需要两个图表的联动,用到两个按钮,这两个按钮分别控制两个图表,第一次直接在btn1的单击事件中使用了$("btn2").trigger("click"),
在按钮2中同样触发了按钮1的事件,本来觉得这样挺好的,没想到一运行,浏览器陷入瘫痪状态,我整理了下逻辑,发现这种写法会导致死循环,于是想到一个临时的解决办法:
$(function(){ var value = 0; $("#btn1").click(function(){ alert("abc"); if(value < 2) { value += 1; $("#btn2").trigger("click"); } else { value = 0; } }); $("#btn2").click(function(){ alert("efg"); if(value < 2) { value += 1; $("$btn1").trigger("click"); } else { value = 0; } }); });
经过这样一番处理后,按钮就不会无休止的调用,也不会造成调用一次就失效的情况。
转载于:https://www.cnblogs.com/Jackie-sky/p/3387147.html