Където и да се кликне да се засича

smoke

Registered
Здравейте,
как мога да направя щом се натисне даден # див да се извършва действие (аз ще си го донапиша) но щом се цъкне където и да е извън този див да се случва друго действие (пак написано от мен)
 
Хубаво е да знаеш кой div какво действие ще извършва и евентуално да ги групираш, но идеята е следната:

Код:
<div id="user_info"></div>

<script type="text/javascript">
$(function(){
    $('#user_info').click(function(){
          alert("clicked on user info");
    });
});
</script>

този пример използва jQuery, така че трябва да вмъкнеш и самата библиотека

Код:
<script type="text/javascript src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
 
не ме разбрахте май когато се кликне да се извършва нещо катко е дадено с примера alert но когато се цакне извън този div да се изкарва alert че се е махнал от дивът ? тоест където и да се цукне извън този див след като се е цъкнал вежднъж да изкарва msg
 
Аз ти дадох насоките - какво ти трябва, за да го направиш. Трябваше да отвориш документацията на jQuery и в секцията за Events да прочетеш за click(), а от там и за Event Object

http://api.jquery.com/click/
http://api.jquery.com/category/events/event-object/


Най-много мразя да давам готови решения, защото така питащия не научава абсолютно нищо.

Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
    $('body').click(function(event){
	if($(event.target).attr('id') == 'user_info'){
		alert("clicked inside user_info");
	}else{
		alert("clicked outside user_info");		
	}
    });
});
</script>

</head>

<body>





<div id="user_info" style="width: 400px; height: 200px; border: solid 1px red; background-color: lightyellow;"></div>

</body>
</html>
 
Хахахаааа тамън влязох и щях да създавам подобна тема xDDD благодаря exec но повече благодаря на smoke щото е имал същия въпрос като мене! xD

бтв то аз днеска се провах с
[js]$('body').click(function() {var idto = $(this).attr(id);});[/js]
ама не се получи... а то се ползвало и event.target констуктора... :D
моя проблем е решен!!! :D (sun)


бтв smoke ето ти и демо http://jsfiddle.net/aKRku/
 
има един проблем... ако има линк или елемент с return false; не се отчита натискането... ето виж http://jsfiddle.net/aKRku/7/ идея как да го оправя?
 
[js]$(function(){
$('body').click(function(event){
event.preventDefault(); //така спираш кликването на линка
if($(event.target).attr('id') == 'user_info'){
alert("clicked inside user_info");
}else{
alert("clicked outside user_info");
}
});
});
[/js]
 

Back
Горе