PDA

View Full Version : سوال: رویداد کلیک همه عناصر به جز یکی



aliblue
جمعه 23 خرداد 1393, 11:42 صبح
با سلام. فرض کنید من یک div دارم که Id اون box هست. و داخل این box تعدادی div دیگر قرار دارند. من میخوام هرجای صفحه که کلیک شد پیامی رو نمایش بدم به جز وقتی که این box و بچه هاش کلیک شدن. من این کد رو نوشتم ولی کار نکرد:
$(document).ready(function () { $("*:not(#box)").click(
function () {
alert("s");
}
);
});
ممنون میشم راهنمایی کنید.

mehdi.mousavi
جمعه 23 خرداد 1393, 14:45 عصر
با سلام. فرض کنید من یک div دارم که Id اون box هست. و داخل این box تعدادی div دیگر قرار دارند. من میخوام هرجای صفحه که کلیک شد پیامی رو نمایش بدم به جز وقتی که این box و بچه هاش کلیک شدن. من این کد رو نوشتم ولی کار نکرد. ممنون میشم راهنمایی کنید.

سلام.
کافیه تا بدین شکل عمل کنید:


$(function(){
$(document).click(function(e){
if($(e.target).closest('#box').length) {
//inside
}
else {
//outside
}
});
});

اینجا، من بررسی می کنم که Element ای که روش Click شده، آیا Parent ای با ID ی box داره یا خیر. اگر داشت، یعنی کلیک داخل box رخ داده، در غیر اینصورت جای دیگری از صفحه.

موفق باشید.

azamicu
شنبه 24 خرداد 1393, 21:42 عصر
با سلام
میتونید بگید وقتی روی box کلیک شد توی رخداد کلیکش اینو بنویسی

event.stoppropagation
return false
;