phpowiec84
28.12.2011, 19:57:27
wykonałem własną liste rozwijaną (autocomplete <ul><li>) która zawiera podpowiedzi dla danego pola ,
jak wykryć kliknięcie po za listą <ul> aby ją ukryć ?
vokiel
28.12.2011, 20:03:12
Wykryj kliknięcie na document, a z tego odfiltruj kliknięcie w obrębie ul
phpowiec84
28.12.2011, 20:11:12
z tym kliknięciem na dokument rozumiem ,tylko niewiem jak "odfiltrować kliknięcie w ul"
vokiel
28.12.2011, 22:23:02
Korzystasz z jQuery, tak?
$(document).on('click',function(){
var $this = $(this);
if ( $this.not('#ul_id') ){
// ok
}else{
// ignore
}
});
phpowiec84
28.12.2011, 23:03:42
Tak ,korzystam z Jquery
ale niestety nie działa,powoduję błąd javascript

(
PlayKiller
29.12.2011, 01:51:35
Spróbuj tak:
$(document).click(function(){
if ($(this).not('#ul_id') )
{
alert('poza lista')
}
else
{
alert('w liscie');
}
});
phpowiec84
29.12.2011, 16:37:42
Dostaję alert po za listą
vokiel
29.12.2011, 17:39:06
Może tak:
$(document).on('click', function(e) {
var clicked = $(e.target);
if ( clicked.attr('id') == 'ul_id'){
// w obrębie listy ul
}else{
// poza listą
}
});
phpowiec84
29.12.2011, 19:49:53
wtedy konsola wypluwa mi : Uncaught TypeError: Object #<Object> has no method 'on' , dla document
vokiel
29.12.2011, 20:41:53
Podepnij jQuery w wersji 1.7, bo pewnie korzystasz ze starej
PlayKiller
29.12.2011, 21:53:39
Przecież to jest ciągle ten sam kod, tylko napisany w inny sposób. Źle podpinasz to pod HTML, skoro nie działa. Pokaż jak to wygląda.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.