안녕하세요 모두 내 프런트 엔드 개발을 위해 j 쿼리를 사용하고 있습니다. js에 내 초반 질문을 작성할 수있는 jb가 꽤 있습니다. 모든 요소에 대해 단일 클릭 이벤트 함수를 작성할 수있는 가능한 방법이 있습니다. 왜냐하면 evey 시간은 모든 요소의 ID를 사용하기 때문입니다. 이렇게.반복하는 대신 자바 스크립트 줄을 반복하는 방법
HTML
<a id="get-in" class="">Login
<div class="log-n-contanier">
<form id="login">
<input type="text" placeholder="Email Address" />
<br>
<input type="password" placeholder="Password" />
<br>
<button class="btn blue med large" id="login-trigger">LOGIN</button>
<span id="forgot-trigger">forgot password?</span>
</form>
<form id="forgot">
<input type="text" placeholder="Email Address" />
<br>
<button class="btn blue med large">Send Instructions</button>
<span id="cancel-trigger">cancel</span>
</form>
</div>
</a>
$('button, a').click(function(){
ids=$(this).attr('id');
if(ids=='get-in'){
$('.log-n-contanier').show();
$(this).addClass('active');
}
else if(ids=='login-trigger')
{
alert('you were loggging');
}
else if(ids=='forgot-trigger'){
$('#login').hide();
$('#forgot').show();
}
else if(ids=='cancel-trigger'){
$('#forgot').hide();
$('#login').show();
}
else{
alert('over');
}
});
방법 event bindings
등을 사용하여 코드를 작게를하는
html 요소를 사용하여 바인딩 이벤트를 지정해야합니다. '$ ('button, a')'을 피하고 $ ('# get-in, # login-trigger, # forgot-trigger, # cancel-trigger')를 사용하십시오. –
@ I.P 샘플을 줄 수 있나요? ..? –
이벤트 핸들러에 많은 코드를 넣지 마십시오. 각 버튼에 각 이벤트 핸들러를 연결하고 결과 코드를 리팩터링하는 것에 대해 걱정할 필요가 없습니다. – Alnitak