Warum gibt der folgende Code die zuvor aktualisierte Rahmenfarbe und nicht die aktuelle Rahmenfarbe zurück?
Html:
<li><a href="#" data-target="#signupModal" data-toggle="modal" id="signup">
<i class="fa fa-user-plus"></i> Sign Up </a></li>
jQuery:
$('#signup').click(function() {
var count = 0;
$('#inputEmail').focusout(function() {
if ($(this).val() == '') {
count++;
$(this).css('border-color', 'red');
console.log('No of times input box focused out: ' + count + ' Current border color: ' + $(this).css('border-color'));
} else {
$(this).css('border-color', 'green');
console.log(' Current border color: ' + $(this).css('border-color'));
}
});
});
Es ändert Grenzfarbe völlig in Ordnung, aber es wird nicht angezeigt, die zur Zeit aktualisiert Randfarbe im Browser-Konsole es eher angezeigt werden die zuvor aktualisierte Rahmenfarbe.
Ihr Code scheint in Ordnung [JsFIddle] zu arbeiten (https://jsfiddle.net/jsn2248h /) – user3284463
@ user3284463 es ändert die Rahmenfarbe perfekt, aber in der Browser-Konsole gibt es alte Rahmenfarbe zurück – Ahtisham
Wirklich schlechte Praxis, die Ereignishandler in anderen Ereignishandlern erstellt, wenn Sie unsicher über die Auswirkungen sind, dies zu tun. Erklären Sie Ihr übergeordnetes Ziel hier – charlietfl