javascript - jQuery odak kaybı olayı
Bir giriş alanı odaklandığında bir konteyneri göstermek ve - asıl sorun bu - odak kaybolduğunda konteyneri gizlemek istiyorum. jQuery'nin focus olayının tersine bir olay var mı?
Bazı örnek kod:
<input type="text" value="" name="filter" id="filter"/>
<div id="options">some cool options</div>
<script type="text/javascript">
$('#options').hide();
$('#filter').focus(function() {
$('#options').appear();
});
</script>
Ve yapmak istediğim şey şöyle bir şey:
$('#filter').focus_lost(function() {
$('#options').hide();
});
Cevap #1
Element odağını kaybettiğinde fonksiyonunuzu çağırmak için blur olayını kullanın :
$('#filter').blur(function() {
$('#options').hide();
});
Cevap #2
Böyle:
$(selector).focusout(function () {
//Your Code
});
Cevap #3
"blur" kullanın: http://docs.jquery.com/Events/blur#fn
Cevap #4
blur olayı: öğe odağı kaybettiğinde.
focusout olayı: eleman veya içindeki herhangi bir eleman odak kaybettiğinde.
Filtre elemanının içinde hiçbir şey olmadığından, bu durumda hem blur hem de focusout çalışacaktır.
$(function() {
$('#filter').blur(function() {
$('#options').hide();
});
})
bulanıklık ile jsfiddle: http://jsfiddle.net/yznhb8pc/
$(function() {
$('#filter').focusout(function() {
$('#options').hide();
});
})
focusout ile jsfiddle: http://jsfiddle.net/yznhb8pc/1/
