js나 jqury는 어떤가요? 첫 번째 버튼을 누른 후 10초 정도 기다리면 다른 버튼이 작동되나요?
인쇄하기 전에 주문이 로드될 때까지 기다려야 하기 때문에 네트워크 인쇄 제어를 만들었습니다. 로드할 수 없으며 로드한 주문만 인쇄됩니다. 그래서 버튼 쿼리를 만들고 다른 인쇄 버튼을 클릭하여 인쇄할 수 있을 때까지 10초를 기다리고 싶습니다.
js나 jqury는 어떤가요? 첫 번째 버튼을 누른 후 10초 정도 기다리면 다른 버튼이 작동되나요?
인쇄하기 전에 주문이 로드될 때까지 기다려야 하기 때문에 네트워크 인쇄 제어를 만들었습니다. 로드할 수 없으며 로드한 주문만 인쇄됩니다. 그래서 버튼 쿼리를 만들고 다른 인쇄 버튼을 클릭하여 인쇄할 수 있을 때까지 10초를 기다리고 싶습니다.
1. 비활성화된 방법을 사용하여 두 번째 인쇄 버튼을 제어할 수 있습니다.
Button1은 기본적으로 비활성화되어 있으며 작동 가능합니다.
Button2는 기본적으로 비활성화되어 있으며 작동할 수 없습니다.
<code class="javascript">$('#button1').click(function(){ //逻辑........ setDisable(); }); function setDisable () { setTimeout(function(){ //10秒后移除第二个按钮disabled属性 $('#button2').removeAttr("disabled"); },10000); }</code>
2. 두 번째 인쇄 버튼을 숨길 수도 있습니다
<code class="javascript">$('#button1').click(function(){ //逻辑........ setDisable(); }); function setDisable () { setTimeout(function(){ //十秒后显示第二个按钮 $('#button2').css("display","block"); },10000); }</code>
setTimeout
첫 번째 버튼을 클릭한 후 다른 버튼에 비활성화="비활성화"를 지정하고 타이머가 종료되면 비활성화=false로 시도해 볼 수 있습니다.
클릭한 후 타이머 setTimeout을 제공하고 다른 버튼을 실행합니다.
다른 사람들이 말하는 것이 너무 단순하고 이해하기 어렵다는 것은 싫습니다. 제가 원하는 것은 결코 짧은 대답이 아닙니다.
첫 번째 버튼을 클릭한 후 10초 후에 두 번째 버튼에 클릭 이벤트를 추가하는 것이 원칙입니다
<code class="js">$('#btn-1').click(function () { //这里写#btn-1 点击时要执行的代码 setTimeout(function(){ $('#btn-2').click(function () { //这里写#btn-1 点击时要执行的代码 }); },10000); });</code>
버튼이 A와 B라고 가정
<code>var $btnA = $('#btn-a'); var $btnB = $('#btn-b'); $btnB.prop('disabled',true); $btnA.on('click',function(){ setTimeout(function(){ $btnB.prop('disabled',false); },10000); }); $btnB.on('click',function(){ //打印 });</code>
핵심은
<code>$btnB.prop('disabled',false);</code>
버튼 A에 비동기 코드가 있고 버튼 B를 활성화하기 전에 백엔드가 반환될 때까지 기다려야 하는 경우 위의 코드 줄을 콜백 함수에 넣어 실행하세요.