PDA

View Full Version : سوال: سوال در مورد سلکتوری از jquery



armin_
سه شنبه 17 اردیبهشت 1392, 21:29 عصر
با سلام
چطور میشه در jquery
کاری کرد که برای مثال اگر 15 تا p پشت سر هم داشته باشیم
بیاد 5 تا 5 تا از هم جدا کنه
یعنی از 1 تا 5 همش رو بک گراند ابی کنه
از 6 تا 10 قرمز
از 11 تا 15 سبز

بعد در دستور

$("li:nth-of-type("+x+")")

چطور میشه کنار x عدد وارد کرد؟
به این صورت که مثلا عدد x رو 2 معرفی کنیم
بعد کنار x یک 2 اضافه کنیم اون وقت li چهارم انتخاب بشه

plague
چهارشنبه 18 اردیبهشت 1392, 17:06 عصر
روش های مختلفی وجود داره
ساده ترینش احتمالا اینه که به یه شمارنده با مقدار 0 بزاری و با یه حلقه each تمام p ها رو پیمایش کنی و در هر پیمایش اون شمارنده رو یدونه افزایش بدی
اینجوری میفهمی که این p شماره چند هستش و اون رنگ دلخواهت رو بهش بدی

اون مورد دومی هم بنویس
parseInt(x) + 2

***BiDaK***
چهارشنبه 18 اردیبهشت 1392, 17:21 عصر
$('p').slice(0, 5).addClass('Red');
$('p').slice(5, 7).addClass('Blue');
$('p').slice(7, 10).addClass('Black');

armin_
چهارشنبه 18 اردیبهشت 1392, 21:11 عصر
روش های مختلفی وجود داره
ساده ترینش احتمالا اینه که به یه شمارنده با مقدار 0 بزاری و با یه حلقه each تمام p ها رو پیمایش کنی و در هر پیمایش اون شمارنده رو یدونه افزایش بدی
اینجوری میفهمی که این p شماره چند هستش و اون رنگ دلخواهت رو بهش بدی

اون مورد دومی هم بنویس
parseInt(x) + 2


مورد اولی کار کرد ولی با دستور
parseInt(x) + 2
نشد
parseInt(x) رشته رو به عدد تبدیل می کنه دیگه؟
قرار دادم داخل کد کار نکرد شما چطور میگید؟

plague
چهارشنبه 18 اردیبهشت 1392, 23:12 عصر
بله رشته رو تبدیل به عدد میکنه
مطمئنی x مقدار عددی داره ؟
بهتره عملیات جمع رو خارج از اون سلکت انجام بدی
بعد نتیجش رو میتونی آلرت یا console.log کنی که مطمئن بشی درسته
بعد نتیجش رو بزاری تو سلکتورت

armin_
پنج شنبه 19 اردیبهشت 1392, 01:10 صبح
بله رشته رو تبدیل به عدد میکنه
مطمئنی x مقدار عددی داره ؟
بهتره عملیات جمع رو خارج از اون سلکت انجام بدی
بعد نتیجش رو میتونی آلرت یا console.log کنی که مطمئن بشی درسته
بعد نتیجش رو بزاری تو سلکتورت


مرسی تستش می کنم
یکیم این callback
فقط برای hide show هستش؟
نمیشه برای هر کار دیگه استفاده کرد؟راهی هست مثلا بگیم بعد این که کلاسی ادد شد و تمام شد یک کار دیگه انجام بده مثلا؟

armin_
پنج شنبه 19 اردیبهشت 1392, 01:23 صبح
مرسی تستش می کنم
یکیم این callback
فقط برای hide show هستش؟
نمیشه برای هر کار دیگه استفاده کرد؟راهی هست مثلا بگیم بعد این که کلاسی ادد شد و تمام شد یک کار دیگه انجام بده مثلا؟


پیدا کردم خودم با .promise().done میشه
فقط میگم اطلاعاتی دارید در مورد این دو دستور؟انگلیس یکم ضعیف تو سایت فارسی هم چیزی نیست اگه اطلاع دارید یکم توضیح بدیدش
ممنون

plague
پنج شنبه 19 اردیبهشت 1392, 23:00 عصر
بعضی چیزا کال بک داره بعضیا نداره
بعضی ها نداره .. اگه با دریم ویور کار کنی خودش میکگه چیا داره
اون پرامیس رو کار نکردم باهاش ولی فکر کنم اینجوری میشه استفادش


$('.x').addClass('z').promise().done(function(){
alert('done');
})

armin_
شنبه 21 اردیبهشت 1392, 12:55 عصر
چطور میشه سرعت لود یک کد رو فهمید؟مثلا بدونیم یک کدی که نوشتیم چقدر زمان اجراش می کشه؟

armin_
شنبه 21 اردیبهشت 1392, 23:18 عصر
چطور میشه سرعت لود یک کد رو فهمید؟مثلا بدونیم یک کدی که نوشتیم چقدر زمان اجراش می کشه؟

در تابع slice
فقط به یک سلکتور مقدار میده مثلا
اگر بگیم

$('p').slice(5, 7).addClass('Blue');


به اولین دسته p که می رسه 5 تا 7 رو کلاس دهی میکنه
یعنی اگر دو دوجای سایت دو دسته 10 تای p داشتیم
فقط دسته اول رو از 5 تا 7 رو کلاس blue میده
چه کنیم که هم به دسته اول و هم به دسته دوم بده؟