جستجو در بخش : سوال جواب منابع اسلامی لغت نامه ها قوانین و مصوبات نقل قل ها
×

فرم ورود

ورود با گوگل ورود با گوگل ورود با تلگرام ورود با تلگرام
رمز عبور را فراموش کرده ام عضو نیستم، می خواهم عضو شوم
×

×

آدرس بخش انتخاب شده


جهت کپی کردن میتوانید از دکمه های Ctrl + C استفاده کنید
رویداد ها - امتیازات
در حال بارگذاری
×

رویداد ها - امتیازات

برای بررسی عملکرد فعالیت و امتیازات خود باید در وب سایت وارد باشید. در صورت عضویت از بخش بالای صفحه وارد شوید، در غیر این صورت از دکمه پایین، مستقیم به صفحه ثبت نام وارد شوید.

×
×
×

دلیل درخواست بستن پست

کلیه پست هایی که جنبه تبلیغاتی داشته، محتوای اسپم و بی مفهوم در این دسته قرار میگیرند. همچنین پست هایی که به منظور گرفتن بک لینک درج می شوند شامل این مورد هستند.
حاوی مفاهیم غیر اخلاقی، سیاسی و یا توهین آمیز. کلیه پست هایی که از نظر محتوایی نیاز به بررسی و یا حذف شدن دارند در این دسته قرار می گیرند.
محتوایی با عدم جزئیات کافی و مورد نیاز. کلیه پست هایی که منظور نویسنده به وضوح مشخص نیست و نیازمند توضیحات و جزئیات بیشتر می باشند در این دسته قرار می گیرند.
محتوایی بی ربط با موضوعیت سرفصل کلی. کلیه پست هایی که از منظر مفهوم و مضمون ارتباطی با عنوان اصلی سوال ندارند در این دسته قرار می گیرند.
محتوایی دلخواه و بر پایه سلیقه. کلیه پست هایی که یک پاسخ مشخص ندارند و متوانند چندین پاسخ متفاوت و صحیح داشته باشند که کاملا مبتنی بر نظر شخصی افراد هستند در این دسته قرار می گیرند.
محتوایی در حوزه خیلی وسیع. کلیه پست هایی که از نظر محتوایی در یک حوزه ی وسیعی قرار دارند و مشخصا به یک موضوع خاصی اشاره ندارند که پاسخدهی به آن ها مستلزم تشریح مفاهیمی کلی می باشند در این دسته قرار می گیرند.
قبلا در لام تا کام مطرح شده. پست هایی که دقیقا با همین محتوا و مضمون قبلا در وب سایت لام تا کام درج شده اند، با ذکر آدرس منبع تکراری با پست حال حاضر شامل این دسته هستند. تکراری است با:
به سایر دلایل، نیازمند به بررسی توسط مدیر. به هر دلیل غیری که پست را نیازمند بررسی توسط مدیر کرده، با ذکر دلیل، در این دسته قرار میگیرد.
ارسال رای بستن

چرا تابع .not() جی کوئری jQuery هیچ تاثیری نداره؟


0
0
1248

کد من رو ببینید:

# HTML
<p>There are some texts</p>
<div class="specific_element">
  sth
</div>
<p>whatever</p>

# CSS
body{
  border: 1px solid;
}
.specific_element{
  border: 1px solid red;
}

# JavaScript/jQuery
$('body').not('.specific_element').css('opacity','.3');

این هم نمونه آنلاینش :

تابع نات جی کوئری کار نمی کند

اگه کدم رو ببنید متوجه می‌شید که من می خوام تمام بادی body رو کم رنگ کنم یعنی شفافیتش opacity رو کم کنم بجز یک المنت element خاصی که مد نظرمه. یعنی می خوام فقط المنتی که این کلاس رو داره specific_element کمرنگ نشه. چی کار باید بکنم؟ فرقی هم نمی کنه که با وانیلا جاوااسکریپت یا با جی کوئری. ممنون میشم کمکم کنید

علمی برنامه-نویسی جاوا-اسکریپت کامپیوتر
سوال شده در سروش قادری نسب
788 امتیاز

500 کاراکتر باقی مانده

3 جواب

3

تابع not برای حذف المنت های مشخصی از یک ست المنت هست. برای مثال:

$('a').not('.active')

کد بالا همه ی تگ های a رو انتخاب میکنه و المنتی که کلاس active داره رو حذف میکنه

توی مثال شما ابتدا body رو انتخاب کردید. پس ست المنت های شما فقط شامل یک المنت body است.

حالا وقتی .not(.specific_element) را اعمال میکنید سعی میکنه این المنت رو از توی ست حذف کنه. چون این المنت توی ست موجود نیست عملا هیچ اتفاقی نمیافته

در واقع کدی که شما نوشتید برابر است با

$('body').css('opacity','.3');

و وقتی شما opacity یک المنت پدر را تغییر میدهید همه ی فرزندان نیز محو میشوند. برای همین باعث میشه که .specific_element نیز محو شود.

راه حل مشکل شما به این صورت میتونه باشه

$('body *').not('.specific_element').css('opacity', '.3')

نمونه آنلاین

ویرایش شده در 5 سال قبل
جواب داده شده در S Kill
558 امتیاز


نکته جالبی بود، فقط امکانش هست بقیه موارد مثل * که توی سلکتور جی کوئری میشه ازشون استفاده کرد رو بگید ما هم یاد بگیریم؟ ــ سعید مرادی در 5 سال قبل
2
متشکرم. این ها سلکتورهای jQuery نیستند بلکه سلکتورهای رسمی وب هستند لیست کامل رو میتونید در اینجا و داکیومنت اصلی پیدا کنید ــ S Kill در 5 سال قبل

مرسی عالی بود ــ سروش قادری نسب در 5 سال قبل

500 کاراکتر باقی مانده


0

بجای اینکه .not() رو مستقیم روی body بزنی، اونو روی بچه هاش بزن. به این شکل:

$('body').children().not('.specific_element').css('opacity','.3');
جواب داده شده در سعید مرادی
1933 امتیاز


ممنونم دوست عزیز ــ سروش قادری نسب در 5 سال قبل

500 کاراکتر باقی مانده


0

یگ نکته جالبی که من توی این سوال و جواب ها یاد گرفتم این بود که * یعنی «همه چیز» در برنامه نویسی (حداقل در جی کوئری jQuery سلکتور). پس میتونم از همین نکته استفاده کنیم (همونطور که آقای Skill هم گفتند) و به این شکل هم پیادش میشه کرد:

$('*:not(*[class*="specific_element"])').css('opacity','.3');

سلکتور (یا همون انتخاب کننده المنت در دام) بالا یعنی:

همه چیز بجز اون المنت مورد نظر

جواب داده شده در سروش قادری نسب
788 امتیاز

500 کاراکتر باقی مانده


جواب شما
     
.....
×

×

جعبه لام تا کام


وب سایت لام تا کام جهت نمایش استاندارد و کاربردی در تمامی نمایشگر ها بهینه شده است.

تبلیغات توضیحی


داپ اَپ اولین پلتفرم کش‌بک در ایران
اگه میخوای از خریدهایی که میکنی، پاداش نقدی دریافت کنی داپ اَپ رو نصب کن.

تبلیغات تصویری