تغییر رنگ صاف در hover jquery. اثر جریان رنگ متناوب

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

جی کوئری

برای شروع، بین تگ ها و باید موارد زیر را قرار دهید:

سپس، دوباره بین تگ ها، این اسکریپت را کپی می کنیم:

$(document).ready(function())($(".Box").hover(function() ($(this).stop().animate(( backgroundColor: "#FF4500"), 400); ) , function() ($(this).stop().animate(( backgroundColor: "#ffffff" ), 400); ));

جایی که .Box کلاس بلوکی است که در بالا در CSS به آن رسیدیم.

"#FF4500" - رنگ شناور. 400 - سرعت انیمیشن هنگام شناور شدن.

"#ffffff" رنگ اولیه پس از دور کردن مکان نما است. 400 - سرعت انیمیشن هنگام دور کردن مکان نما.

HTML

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

و بلوک ظاهر می شود.

مهم است

این افزونه فقط می تواند رنگ پس زمینه را تغییر دهد. برای مثال، نمی‌توانید آن را به پیوندها یا متن پیوست کنید. یک افزونه دیگر رنگ پیوندها را تغییر می دهد (قطعاً به زودی نحوه انجام آن را خواهم نوشت).

اگر می خواهید بلوک های صفحه را ایجاد کنید رنگ های مختلف، مانند من، باید چندین اسکریپت را در یک ردیف بین برچسب ها قرار دهید و بر این اساس، فراموش نکنید که رنگ را به رنگ دلخواه تغییر دهید. مهمترین چیز این است که کلاس را تغییر دهید، برای مثال در مثال بالا - کلاس Box، و اسکریپت بعدی باید با یک کلاس متفاوت باشد، به عنوان مثال Box1، سپس Box2 و غیره.

همین دوستان عزیز. اگر چیزی متوجه نشدید، حتما در نظرات بپرسید. به زودی می بینمت.

یک لایه با متن و یک دکمه وجود دارد که وقتی روی آن کلیک می کنید باید رنگ متن این لایه را تغییر دهید.

تغییر رنگ (jQuery) $(document).ready(function())($("#color_change"). کلیک کنید(function())($("#layer").css("color", "#F00" ))))

#لایه (حاشیه:#CCC 1px جامد؛ خط-ارتفاع: 1.5؛ بالشتک: 10px 20px؛ عرض:800px؛ margin-top:20px؛) اما به طوری که بفهمید این تصور غلط افرادی که لذت را محکوم می کنند و درد را ستایش می کنند از کجا می آید. ، من تمام تصویر را برای شما فاش می کنم و دقیقاً توضیح می دهم که این مردی که حقیقت را کشف کرده است ، که من او را معمار یک زندگی شاد می نامم ، دقیقاً چه گفته است. در واقع، هیچ‌کس لذت‌ها را رد نمی‌کند، تحقیر نمی‌کند یا از آن دوری نمی‌کند، فقط به این دلیل که لذت‌ها هستند، بلکه تنها به این دلیل است که کسانی که نمی‌دانند چگونه به طور منطقی در لذت‌ها افراط کنند، رنج زیادی می‌کشند. همانطور که هیچ کس نیست که خودش رنج را دوست داشته باشد، ترجیح دهد و اشتیاق داشته باشد، فقط به این دلیل که رنج است، و نه به این دلیل که گاهی اوقات شرایطی پیش می آید که رنج و درد لذت قابل توجهی را به همراه دارد. برای استفاده از یک مثال ساده، کدام یک از ما به هر نوع ورزش شدید بدنی می پردازیم اگر سودی به همراه نداشته باشد؟ و چه کسی می‌تواند به انصاف کسی را سرزنش کند که برای لذتی تلاش می‌کند که هیچ مشکلی به همراه ندارد، یا کسی را که از دردی که هیچ لذتی به همراه ندارد اجتناب می‌کند؟

ایده فوق العاده ساده و واضح است... بیایید فرض کنیم که می خواهیم رنگ پس زمینه صفحه را هنگام پیمایش هر 500 پیکسل از بالا تغییر دهیم. متأسفانه، امکان یافتن یک گزینه ساده آماده و قابل مدرن سازی وجود نداشت. بنابراین، همراه با @only_darkangel، یک نسخه ابتدایی نوشته شد:

ابتدا، بیایید کتابخانه‌ها را در head قرار دهیم، اگر قبلاً گنجانده نشده‌اند

سپس چند خط از سبک
بدن (
پس زمینه: #fff;
}

ارتفاع: 4000 پیکسل
بعد یک اسکریپت است که هنگام پیمایش رنگ صفحه را تغییر می دهد.


عدد 400 سرعت تغییر رنگ (0.4 ثانیه) را تعیین می کند. در پایین، عدد 451 زمان بررسی موقعیت اسکرول را تعیین می کند.
window.onload=function())(
setInterval(function())(
var scroll = $(window).scrollTop();
اگر (پیمایش == 0) (
}
$("body").animate((Color: "White"), 400); //در ابتدا پس زمینه سفید است
اگر (پیمایش = 1) (
}
$("body").animate((رنگ زمینه: "سبز"), 400); //سپس اگر از 1 تا 500 پیکسل پیمایش کنید، رنگ به سبز تغییر می کند
اگر (پیمایش = 501) (
}
$("body").animate((رنگ زمینه: "قرمز"), 400); //بیش از 501 پیکسل پیمایش از بالا، رنگ به قرمز تغییر می کند
$("body").animate((رنگ زمینه: "آبی"), 400);
}
اگر (پیمایش >= 1501) (
$("body").animate((رنگ زمینه: "زرد"), 400);
}
}, 451);
}

نسخه ی نمایشی فیلمنامه. همانطور که می بینید، همه چیز بسیار ساده و واضح است، اما در عین حال ابتدایی است.

من همچنین یک گزینه زیباتر و در عین حال پیچیده پیدا کردم http://jsfiddle.net/jguffey/mxkx9j2o/، همچنین ممکن است مفید باشد.

سوالات خود را در نظرات بپرسید، مقاله را در رسانه های اجتماعی به اشتراک بگذارید. شبکه ها با کلیک بر روی دکمه مناسب زیر :) از شما برای خواندن متشکرم!

در این درس در مورد اثری صحبت خواهیم کرد که در آن پس‌زمینه یک شیء به آرامی تغییر می‌کند و نشانگر ماوس روی آن قرار می‌گیرد.
اول، همانطور که احتمالا قبلاً عادت کرده اید (اگر این اولین بار نیست که از کتابخانه jQuery استفاده می کنید)، ما jQuery را به وب سایت خود متصل می کنیم.
علاوه بر خود جی کوئری، به رابط کاربری جی کوئری نیز نیاز داریم.

اگر با اصول جی کوئری آشنایی دارید، پس باید به یاد داشته باشید که در هدر باید کد تماس، در این مورد انیمیشن تغییر رنگ را قرار دهیم تا قبل از لود شدن محتوای اصلی صفحه، بارگذاری شود. $(document).ready(function() ( // کد تماس انیمیشن خود را در اینجا قرار دهید ));

HTML

در اینجا نمونه ای از نشانه گذاری html آورده شده است.

تغییر رنگ پس زمینه یک عنصر انیمیشن تغییر رنگ در شناور / بازی های رایانه شخصی / پورتال 2 پورتال 2

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

CSS

سبک های CSS برای صفحه ما به این شکل است.

Png)؛

text-align:left;

color:#333;
عرض: 800 پیکسل

اندازه فونت: 14px;

font-family:Georgia, "time new romances", serif;

حاشیه: 0 خودکار;

بالشتک: 0; ) a( رنگ:#333؛ متن-تزیین: هیچکدام) a:focus (طرح کلی: هیچکدام؛) h1 (اندازه قلم: 34 پیکسل؛ فونت-خانواده: verdana، helvetica، arial، sans-serif؛ فاصله حروف:- 2px: font-weight:0 1px #70CB; 14px font-family, helvetica, sans-spacing:-1px ; 0 0 10px; position:relative; 0 عرض: 100% .block (color:#0066CC;

float:left;

overflow:hidden;

موقعیت:نسبی;

عرض: 600 پیکسل ) .block h4، .block h4 a (رنگ:#333333؛ اندازه قلم:11px؛ padding:5px 0؛ text-shadow:0 1px 1px #CEDEFD؛ تبدیل متن:بزرگ؛ )

انیمیشن هر عنصر بعدی مجموعه باید با تاخیر مشخصی بعد از عنصر قبلی شروع شود.

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

برای (var i = 0; i

توجه داشته باشید که setTimeout() به عنوان اولین پارامتر تابعی را می گیرد که تابع دیگری را برمی گرداند.

اگر این کار انجام نشود، متغیر i با مرجع ارسال می شود و زمانی که زمان اجرای تابع تایمر فرا می رسد، آخرین مقدار آن برابر با $elements.length خواهد بود، زیرا تا این لحظه برای حلقهدر حال حاضر تمام می شود و انیمیشن اصلا اجرا نمی شود.

با استفاده از یک تابع تو در تو، به این ترتیب مقدار i را در هر تکرار حلقه کپی می کنیم، که با کمک آن به عملکرد صحیح پلان دست پیدا می کنیم.

نتیجه گیری

برای مثال می‌توانید از چنین انیمیشنی برای نشان دادن اینکه در برخی از فهرست‌های پارامترها باید حداقل یکی را انتخاب کنید یا صرفاً برای جلب توجه به برخی از بلوک‌های صفحه استفاده کنید.