سعید شعبانی

افزودن یا حذف کردن class یک المان توسط jquery بر اساس ارتفاع آن در زمان اسکرول عمودی

7 پست در این موضوع قرار دارد

دوستان سلام

با استفاده از کد زیر میشه به یک المان وقتی که ارتفاع صفحه 500 پیکسل شد یک class اضافه کرد و در بقیه موارد هم این کلاس را حذف کرد.


$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 500) {
$(".clearHeader").addClass("darkHeader");
} else {
$(".clearHeader").removeClass("darkHeader");
}
});

اما من می خواهم با توجه به ارتفاع والد اون المان, این کلاس ها افزوده و حذف بشند. البته ارتفاع المان والد هم متغییر هست.

0

به اشتراک گذاری این پست


لینک به پست

$(".parent").filter(function() {
var height = $(this).height();
if (height >= 500) {
$(this).find(".child").addClass("darkHeader");
} else {
$(this).find(".child").removeClass("darkHeader");
}
});

4

به اشتراک گذاری این پست


لینک به پست

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

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

0

به اشتراک گذاری این پست


لینک به پست

موقعیت المان والدتون چوریه

اگر نقطه آغازش در صفحه معلوم باشه می شه نقطه پایانش رو محاسبه کرد و الا که به نظر من راهی نمی رسه جز اینکه والد را پوزیشن ابسولوت در محل قرار بدید که مختصات top ازش دربیاد


$(window).scroll(function() {
var parentStart = $(".parent").css("top");
var h = $(".parent").outerHeight();
var parentEnd = parseInt(h)+parseInt(parentStart);
var scroll = $(window).scrollTop();
if (scroll >= parentEnd) {
$(".child").removeClass("darkHeader1").addClass("darkHeader2");
} else
if (scroll >= parentStart) {
$(".child").removeClass("darkHeader2").addClass("darkHeader1");
}
else {
$(".child").removeClass("darkHeader2").removeClass("darkHeader1");
}
});

3

به اشتراک گذاری این پست


لینک به پست

در اصل من می خواهم یک نوار اشتراک گذاری متحرک ایجاد کنم مثل نوار اشتراک گذاری 1پزشک یا wpmudev که فقط در کنار متن اصلی مطلب به صورت شناور حرکت می کنند. از نظر css مشکلی ندارم فقط اگر بشه کاری کرد که زمان رسیدن اسکرول صفحه به اون نوار یک کلاس جدید بهش اضافه کرد و وقتی که اسکرول به آخر متن مطلب رسید یک کلاس جدید دیگه هم به نوار اشتراک گذاری افزوده بشه با css می توند شناور بودن را ایجاد کنم.

0

به اشتراک گذاری این پست


لینک به پست

چرا پس از اول نممی رید سر مسئله اصلی

صبح اول صببح کلی معما حل کردم :D

http://jsfiddle.net/fakhar/2hSVY/2/embedded/result/

3

به اشتراک گذاری این پست


لینک به پست

عالی بود اینجا هم می تونید نتیجش رو ببینید

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط unid_user
      سلام و درود
      دوستان گرامی ، علت پرش صفحه زمان hover شدن موس روی یک div در جی کوئری چیه؟
      $(".box #a-x").hover(function() { $('#x-img').stop().fadeIn('400'); }, function() { $('#x-img').stop().fadeOut('300'); }); $(".box #a-y").hover(function() { $('#y-img').stop().fadeIn('400'); }, function() { $('#y-img').stop().fadeOut('300'); }); البته بیش تر از این تعداده حدود 7 تگ هستش. لطفا راهنمایی کنید.
      با تشکر و سپاس
    • توسط amirmt
      سلام و عرض ادب هنگامی که سایتم و میخوام باز کنم و ادرسش رو سرچ میکنم یه صفحه سفید باز میشه که این اخطار رو میده 
      Parse error: syntax error, unexpected 'text' (T_STRING) in /home/unickir/public_html/wp-includes/class-oembed.php on line 461
      کسی میدونه مشکل کجاست و کمک کنه
      ادرس سایت}: www.unick.ir
    • توسط Borzou
      سلام
      قالب سایتم  مدرن فایل هست. آدرس سایت:    www.First90day.ir  و از EDD  استفاده میکنم.
      میخوام سایدبار سمت راست در قسمت نوشته ها و قسمت دانلودها موقعی که اسکرول میشه ثابت بمونه. تو قسمت تنظیمات قالب چیزی نبود.  چیکار کنم؟
      ممنون میشم جواب بدید.
       
    • توسط amirmt
      سلام سایت من چند وقتیه مورده حمله قرار گرفته و وقتی میخوام وارد سایت بشم به سایت های خارجی لینک میشه. اینترنت و زیر رو کردم یه سایت گیرم اوردم به ادرس sucuri.net سایتم رو دادم چک کنه و یه لیست از فایل هایی که مشکل داره رو گفت گه یه اسکرین ازش پیوند کردم. اکثره فایل ها هم jquery هستش که به مشکل خورده کسی میتونه کمکم کنه تا این کد ها ترمیم بشه یا حداقل راهنماییم کنه؟؟
      ادرس وب سایته خودم: unick.ir

    • توسط shayan
      سلام و درود خدمت اساتید گرام
      من یه چیزی تو ذهنم هست نمیدونم جواب میده یا خیر
      <div class="g-before-after" id="RF"><img src="img/1.jpg" data-aftersrc="img/2.jpg"></div> میخوام یه دستوری نوشته بشه تا بعد از گذشت فرضا 100 ثانیه و با افکت فید به صورت همزمان "img/1.jpg" و "img/2.jpg" تبدیل بشن به "img/3.jpg" و "img/4.jpg"
       
      تقریبا مشابه یک اسلایدر عمل کنن با این تفاوت صرفا و صرفا  src ها تغییر کنه نه محموعه این خط div که نوشتم
      آیا امکانپذیر هست؟