هنگام پیمایش صفحه یک منوی ثابت ایجاد کنید. منوی ثابت هنگام پیمایش صفحه. نحوه اصلاح منوی بالا در وردپرس

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

پلاگین ناوبری ثابت Sticky HeaderjQuery پنهان کردن خودکار، که بر اساس اصل مشابه اسکریپت بالا کار می کند، اما کمتر روان است، اگرچه، در نگاه اول، کمی ساده تر است. متأسفانه ، نمی توانم بگویم که ناوبری کاملاً تطبیقی ​​است ، زیرا در صفحه های کوچک موارد منو فقط به اعداد تبدیل می شوند ، که بسیار عجیب است.

On Scroll Header Effects پلاگین قدرتمند جی کوئری برای نوار ناوبری ثابت. هنگام پیمایش می توانید بخش های خاصی را در صفحه تنظیم کنید که با رسیدن به آنها پانل تغییر می کند و می تواند کاملاً تغییر کند ظاهر. می تواند هر تعداد از این بخش ها در یک صفحه وجود داشته باشد.

On-Scroll Animated Header یک افزونه خوب برای پیاده سازی نوار ناوبری چسبنده. این کار به این صورت است: در همان ابتدای صفحه، یک هدر بلند حاوی لوگو و منو را می بینیم. هنگام پیمایش، ناحیه سرصفحه با همه عناصر، از جمله لوگو و ناوبری، به آرامی با استفاده از ویژگی‌ها کاهش می‌یابد و به نوار باریکی تبدیل می‌شود که به بالای صفحه چسبیده است.

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

آن ها همانطور که صفحه را اسکرول می کنید، می بینید که قسمت اصلی نوار کناری بالا می رود، اما ویجتی که در پایین قرار دارد، مهم نیست که چقدر متن را پایین می آورید، در ناحیه مشاهده باقی می ماند. فوراً می گویم چه پستی بگذارم تبلیغات متنیاین ممنوع است و می تواند برای آن مجازات شود (همانطور که در نظرات مشخص شد - YAN این اجازه را می دهد ، اما Adsense انجام این کار را ممنوع می کند).

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

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

چرا منو را اصلاح می کنیم و یک نوار کناری شناور می سازیم؟

می‌پرسید چرا منوی بالا را درست کنید؟ خب، به طور کلی، این یک آزمایش کوچک در مورد موضوع بهبود است. کاملاً فرضی است، می‌توانیم فرض کنیم که این می‌تواند باعث افزایش تعداد صفحات مشاهده شده و زمان صرف شده توسط کاربر در سایت شود.

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

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

نحوه اصلاح منوی بالا در وردپرس

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

اگر به خاطر داشته باشید، در مقاله در مورد بهینه سازی سرعت بارگذاری صفحه، باید سعی کنید تمام CSS و JS را در یک مورد مشترک (به معنای دو - یکی برای استایل ها و دیگری برای اسکریپت ها) ترکیب کنید. بنابراین، در واقع، من خطوط کدی را که دقیقاً در زیر آورده شده است به چنین فایلی اضافه کردم. اگرچه می توانید مستقیماً آنها را به آن اضافه کنید کد HTML، توسط برچسب های اسکریپت احاطه شده است. به عنوان مثال، این کار را می توان در قالب header.php در داخل تگ های head انجام داد.

همچنین می توانید با استفاده از منوی بالا را اصلاح کنید CSS خالص- برای کمک به ما. در واقع، موقعیت یابی نیز در اینجا با استفاده از این مورد استفاده می شود ویژگی های CSS، اما همچنین می توان شروع به نمایش یک منوی ثابت نه بلافاصله، بلکه مدتی پس از شروع پیمایش (در فاصله معینی از بالا) کرد.

در مورد من، کد اصلاح منوی بالا به این صورت است:

$(function())($(window).scroll(function() ( var top = $(document).scrollTop(); if (بالا< 10) $("#navi").css({top: "0", position: "relative"}); else $("#navi").css({top: "0px", width: "100%", position: "fixed"}); }); });

به شما یادآوری می کنم که می توانید این قطعه کد را در:

  • فایلی با پسوند js که در پوشه ای با موضوع مورد استفاده شما (/wp-content/themes/theme) قرار دارد. فقط در صورتی برای شما مناسب است که در فایل header.php خطی برای بارگذاری آن به همراه صفحات وب سایت شما نوشته شده باشد که ممکن است به شکل زیر باشد:
  • برای نتیجه گیری می توانید از خود فایل header.php استفاده کنید این کدبین تگ‌های سر باز و بسته و قرار دادن آن در تگ‌های اسکریپت، به عنوان مثال: $(function())($(window).scroll(function() ( var top = $(document).scrollTop(); if (بالا< 10) $("#navi").css({top: "0", position: "relative"}); else $("#navi").css({top: "0px", width: "100%", position: "fixed"}); }); });
  • همچنین می توانید این کد را در تگ های اسکریپت در هر مکان دیگری بنویسید. نکته اصلی این است که بارگذاری می شود صفحات مناسبوبلاگ. به عنوان مثال، می توانید این کار را در footer.php قبل از بسته شدن تگ بدن انجام دهید.
  • حالا بیایید مستقیماً به این کد نگاه کنیم. به نظر می رسد که 10 پیکسل از بالا موقعیت یابی نسبیبا یک ثابت جایگزین می شود (مقاله را در لینک داده شده در بالا ببینید). در صورت لزوم، در خط با else می‌توانید مقدار غیر صفر را برای بالا انتخاب کنید، و سپس منوی ثابت در بالا از لبه بالایی درگاه نمایش خارج می‌شود. ارزش داده شدهپیکسل (به نظر من، این غیر ضروری است).

    برخلاف کد اصلی، من باید عرض را نیز اضافه کنم: "100٪"، زیرا در غیر این صورت اندازه منو از عرض کم می شود که کل تصویر را خراب می کند.

    نگاه کنید، برای وضوح، من کد Html را که با آن منوی بالایی در من تشکیل می شود، ارائه می کنم قالب وردپرسوبلاگ (در فایل header.php من زندگی می کند):

    در قالب شما، به احتمال زیاد، نمایش آیتم های منو با استفاده از مثلاً چنین ساختاری (عملکردی) مشخص می شود، اما این مهم نیست.