Poorya.sh

کدی برای مخفی و ظاهر کردن یک منو به کمک اسکرول

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

سلام یک سئوال جدید دارم یک کدی هست که یک جا های میزارن مثلا یک منو واسه بالای سایت میسازن خوب بعدش تا وقتی در بالای صفحه هستی دیده نمیشه ولی وقتی اسکرول میکشی پایین ظاهر میشن و باز که صفحه رو به وسیله اسکرول میدی بالا مخفی میشن کد اون میخواستم اگه امکانش هست.من خودم تا یکجای فهمیدم ولی کامل نه وقتی صفحه بالاست و اون منو نامرئی حالت display میره روی none یعنی به این شکل display:none ولی وقتی میای پایین و ظاهر میشه کد به این شکل در می آید display:block حالا این که باید چکار کنم که با بالا و پایین شدن اسکرول این اتفاق بیفته رو بلد نیستم و ممنون میشم اگه مثل همیشه کمک کنید همچنین پیشاپیش از پاسخ های شما سپاسگذارم.

0

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


لینک به پست

با JQuery باید انجام بدین. تابع ScrollTop این کار رو انجام میده. به عنوان مثال شما می تونید به این صورت بنویسید:


$(window).scroll(function () {
var $h = $(window).scrollTop();

if ( $h < 300 )
{
$('header').removeClass("x")
}
else {
$('header').addClass("y")
}

});

کاربر وقتی بیشتر از 300 پیکسل اسکرول کنه کلاس y اضافه میشه. وقتی بالاتر باشه کلاس x.

5

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


لینک به پست
6

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


لینک به پست

با JQuery باید انجام بدین. تابع ScrollTop این کار رو انجام میده. به عنوان مثال شما می تونید به این صورت بنویسید:


$(window).scroll(function () {
var $h = $(window).scrollTop();

if ( $h < 300 )
{
$('header').removeClass("x")
}
else {
$('header').addClass("y")
}

});

کاربر وقتی بیشتر از 300 پیکسل اسکرول کنه کلاس y اضافه میشه. وقتی بالاتر باشه کلاس x.

دوست عزیز میشه یک مقدار توضیح بدی چجوریه؟

0

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


لینک به پست

دوست عزیز میشه یک مقدار توضیح بدی چجوریه؟

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

2

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


لینک به پست

خوب اونی که آقا ایمان گذاشته چجوریه من خودم منو رو ساختم خوب فقط میخوام یک جوری باشه که با اسکرول بالا پایین بره همین از اون هیچی نفهمیدم یک جوری بود کلی کد داشته

خوب اونی که آقا ایمان گذاشته چجوریه من خودم منو رو ساختم خوب فقط میخوام یک جوری باشه که با اسکرول بالا پایین بره همین از اون هیچی نفهمیدم یک جوری بود کلی کد داشته

0

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


لینک به پست

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

آقا فکر کنم از اون کدی که دادید یک چیزای در آوردم میشه بگید باید کد کجا قرار بدم چون توی Style.Css قرار میدم جواب نمیده :(

0

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


لینک به پست

کدی که فرمودند jquery است باید داخل تگ script قرار بگیره


<script>
$(window).scroll(function () {
var $h = $(window).scrollTop();
if ( $h < 300 )
{
$('header').removeClass("x")
}
else {
$('header').addClass("y")
}
});
</script>

می تونید در فایل footer.php بگذارید

4

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


لینک به پست

آقا من هرکار میکنم نمیشه :( اون منو رو توی هدر قرار دادم کد فراخونیش اینم اسم کلاسش fixedheader این کدی که دادید رو هم اونجا گذاشتم این کلاس هم گذاشتم ولی کار نکرد :( درضمن برای ناپدید شدنش گفتید یک کلاس دیگه تعریف کنم یعنی چجوری :(

0

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


لینک به پست

اگر می خواهید شبیه همون دموی توی لینک باشه کدهای همون رو در سایتتون قرار بدید اینقدر هم دردسر نکشید کد css و js هر دو مشخصند

1

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


لینک به پست

خوب آخه من الان کلی زمان گذاشتم و یکی طراحی کردم که خیلی هم قشنگ شده حیف واسه این قابلیت بیخیالش بشم اگه امکانش هست تر خدا کمک کنید اگه بخواید میتونم کداش هم بزارم تا راهنمای کنید.

0

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


لینک به پست

کدتون رو بزارید

1

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


لینک به پست

بفرمایید این کد استایل


.fixedheader { position:fixed; top:0; background:url("images/menu-bg.png") repeat 0 0; height:50px; z-index:1000; width:100%; padding:0 50px; display:none; }
.fixedheader ul { list-style:none; }
.fixedheader ul li { float:right; }
.fixedheader ul li a {
color: #FFFFFF;
height: 30px;
line-height: 50px;
margin: 13px 0 0 5px;
padding: 0 10px;
font: 0 10pt/55px 'Droid';
}
.fixedheader ul li a:hover { background-color: rgba(0, 0, 0, 0.1); border-radius:3px; padding-right:12px; margin-left:3px; }
.fixedheader ul li a.homelink { background:url('images/home.png') no-repeat 80px 2px; padding-right:35px; }
.fixedheader ul li a.homelink:hover { background-color:rgba(0, 0, 0, 0.1); background-position:97 2px; padding-right:37px; margin-left:3px; }
.fixedheader > ul.left { margin-left:90px; float:left }
.fixedheader > ul.left li a {
background: rgba(0, 0, 0, 0.1);
border-radius: 3px;
color: #FFFFFF;
height: 30px;
line-height: 50px;
margin: 13px 0 0 5px;
padding: 0 10px;
}
.fixedheader > ul.left li a:hover { background: rgba(0,0,0,0.2) }

اینم کدی که توی هدر برای فراخوانی قرار دادم


<div class="fixedheader" style="display: block;">
<ul>
<li><a class="homelink" href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php esc_html_e( 'صفحه اصلی' ); ?></a></li>
<li><a href="http://gamesource.ir/news/">اخبار</a></li>
<li><a href="http://gamesource.ir/article/">مقالات</a></li>
<li><a href="http://gamesource.ir/games/">بازی ها</a></li>
<li><a href="http://gamesource.ir/games-review/">نقد و بررسی بازی ها</a></li>
<li><a href="http://gamesource.ir/videos/">ویدئو ها</a></li>
<li><a href="http://gamesource.ir/pictures/">گالری تصاویر</a></li>
<li><a href="http://gamesource.ir/forum/">انجمن</a></li>
<li><a href="http://gamesource.ir/contact/">تماس با ما</a></li>
</ul>
<ul class="left">
<li><a href="http://gamesource.ir/register/">عضویت در سایت</a></li>
<li><a href="http://gamesource.ir/register/">وارد شوید</a></li>
</ul>
</div>

0

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


لینک به پست

نمونه:


http://jsfiddle.net/apaul34208/ZyKar/3/
http://jsfiddle.net/tcloninger/e5qaD/

2

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


لینک به پست

خوب آقا مرتضی من همون کدای اونجا کلاسش عوض میکنم قرار میدم ولی نمیدونم چرا کار نمیکنه :(

0

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


لینک به پست

خوب آقا مرتضی من همون کدای اونجا کلاسش عوض میکنم قرار میدم ولی نمیدونم چرا کار نمیکنه :(

خوب کلاس را نباید تغییر بدید مگر اینکه در تمام کد اینکار را بکنید مثلا اگر bottomMenu را به nav تغییر دادید اسکریپت همباید تبدیل بشه به


$(document).scroll(function () {
var y = $(this).scrollTop();
if (y > 800) {
$('.nav').fadeIn();
} else {
$('.nav').fadeOut();
}
});

و همینطور کدهای css , html

2

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


لینک به پست

نه منظور منم همین بود که کلاس همین کد با کلاس css مچ کردم ولی کار نکرد من کدام قرار دادم میشه طبق همونا واسم درست کنید همین و بگید کجا قرار بدم خواهش میکنم اینکار بکنید خیلی واجبه پیشاپیش هم ممنون

0

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


لینک به پست

شما عوض کنید روی سایت بزارید تا راحتتر بشه بررسی کرد

0

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


لینک به پست

شما عوض کنید روی سایت بزارید تا راحتتر بشه بررسی کرد

خوب آقا مرتضی قالب قرار دادم حالا میشه لطفا بررسی کنید؟

http://gamesource.ir/

0

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


لینک به پست

بگردید دنبال


<!-- #main-header -->

و این کد را درست قبلش بگذارید


<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
<script type="text/javascript">
<!--
$('.fixedheader').hide()
$(document).scroll(function () {
var y = $(this).scrollTop();
if (y > 800) {
$('.fixedheader').fadeIn(1000);
} else {
$('.fixedheader').fadeOut(1000);
}

});
//-->
</script>

در قالب شما ده ها بار جی کوئری و جاوا اسکریپتهای دیگر فراخوانی شدند بهتون پیشنهاد می کنم سایت را اینقدر سنگین نکنید

2

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


لینک به پست

آقا ایمان واقعا دمت گرم و دستت درد نکنه درست شد خیلی خیلی خیلی ممنونم واسه اون سنگین کردن اینا هم قالب من نساختم از الگانت خریدم و فکر کنم قالب های الگانت بالاترین استاندارد دارند و فکر نکنم مشکلی ایجاد بشه

0

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط koolfayfer
      سلام به همه
      من یه div دارم که پیشفرض به سمت راست میچرخه به مدت نامحدود
      وقتی روش هاور میشی به اندازه یک ثانیه معکوس به سمت چپ میچرخه یه بار!
      حالا اگه کسی بیشتر از یک ثانیه هاور بمونه انیمیشن چرخش اولیه به خاطر وجود انیمیشن هاور stop میشه و میخوام اگه در css ترفندی هست بعد از گذشت یک ثانیه هاور شدن آنهاور بشه یا هر چیز دیگه که باعث بشه انیمیشن پیشفرض کار کنه
      اگه css نبود کسی با جیکوئری میدونه؟
    • توسط amzzm75
      باسلام و احترام قالبی که من استفاده میکنم تعداد زیادی فایل css و javascript داره به طوری که تعداد درخواست ها به سرور منو زیاد کرده به طوری که وقتی با gtmetrix تست میکنم میزنه 150 درخواست به سرور و به فشرده نبودن و تعداد زیاد فایل ها ایراد میگیره من یه بار اومدم با سایتایی که این فایلا رو فشرده میکنن فشردشون کردم اما فونت و ظاهر بعضی قسمت های سایت بهم ریخت و مجبور شدم به حالت قبل برش گردونم موندم چیکار کنم که تعداد فایل ها کم بشه تا سرعت لود سایت بالاتر بره و سایت بهینه بشه لطفا راهنمایی کنین 
      آدرس سایت من:umagazine.ir
    • توسط chemist
      با سلام و عرض خسته نباشید؛
      بنده از این کد CSS در وب سایت استفاده کرده ام؛
      #left-menu i img { max-width:24px; max-height:24px; } در مرورگر کروم موبایل تصاویر در اندازه واقعی عکس ها نمایش داده می شود! (از ماکزیمم طول و عرض تعیین شده تبعیت نمی کند) ولی در مابقی مرورگرها با ابعاد تعیین شده نمایش داده می شود. آیا برای سازگاری کامل با تمامی مرورگرها باید تغییری در کد اعمال کنم؟
      ممنون میشم راهنمایی بفرمائید.
      با تشکر
    • توسط mehr-cs
      سلام
      منمیخوام یه قسمت تحت عنوان تاریخچه داشته باشم به این صورت که، تو یک باکس کوچیک تمامی حروف الفبا رو داشته باشم و لوگوی کل تاریخچه ی برند هام تو صفحه باشه و کاربر بعد از کلیک کردن روی هر کدوم از حروف الفبا، کلیه تاریخچه هایی که با اون حرف شروع میشه رو ببینه !
      دوستان راهنمایی میکنن ؟
    • توسط mihanpsd
      سلام میخوام وقتی موس به سمت محصولات حرکت داده میشه ، عکس hover محصول نمایش داده نشه و حرکت نکنه . همون عکس بصورت ثابت باقی بمونه .
      ممنون میشم راهنمایی کنید .
      http://mashinno.com