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

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط 3ngineer
      سلام دوستان
      من برای یکی از صفحات سایت نیاز دارم که دو تا فایل جاوا اسکریپت و یک css   رو داشته باشم، در کد html هم به این فایل ها آدرس دادم ولی نمیدونم این فایلا رو کجا اپ کنم. در پوشه های مربوط به خودشون در فولدرهای قالب فعال گذاشتم ولی نشد.
      میتونم کدشون رو داخل همون html وارد کنم؟ یا باید جایی این فایل ها اپلود شه؟
    • توسط unid_user
      سلام و درود
      دوستان گرامی ، من میخوام وقتی زیر منوها باز میشن از هم فاصله داشته باشن. اگه به منوها padding یا margin بدم درست میشه ولی فاصله ها خیلی زیاد میشن.
      با تشکر و سپاس

    • توسط jistili1
      سلام دوستان.من اومدم به قول خودم سایتم رو با استفاده از دستور های media query در css ریسپانسیو کردم.سایتم اینه:namavaz.ir.اومدم برای سایز های مختلف device سایت رو تعریف کردم.ولی الان وقتی سایت رو باز میکنید اصلا کاری به مدیاکوئری ها نداره.همون صفحه ای که روی لپتاپم میاره رو روی موبایل میاد زوم بک میکنه.اگه سایز مرورگر رو توی لپتاپ تغییر بدم مدیاکوئری ها کار میکنن ولی روی موبایل مشکل داره.ممنون میشم راهنمائیم کنید.
    • توسط Ali Brm
      سلام خدمت دوستان
      توی قسمت‌های مختلف وردپرس و توی قالب بخشی وجود داره که میشه کلاس CSS یا ID اون رو اضافه کرد. من با کلاس‌ها و ID آشنایی دارم ولی نمی‌دونم چه جوری باید از اون استفاده کرد. اگه امکانش هست یه توضیح با یک مثال بفرمایید.
      ممنون

    • توسط Ali Brm
      سلام دوستان
      بعضی افزونه‌ها میتونن به صورت گرافیکی یا دستی بیان و ظاهر سایت رو تغییر بدن. مثلا با افزونه مداد زرد میشه کلی توی کد ظاهری سایت دست برد.
      من خودم به CSS و HTML آشنایی دارم ولی سوالی که برام پیش میاد اینه که افزونه ای مانند مداد زرد کدهای CSSاش رو کجا مینویسه
      یه مثال کوچیک بزنم. مثلا اگه دستی برم توی کدهای قالبم و دستی روی فایلش یه تغییری ایجاد کنم خب تغییر اعمال میشه ولی وقتی میرم تنظیمات قالب توی وردپرس و ذخیره تنظیمات رو میزنم همه کدهایی که دستی وارد کردم همه میپره. دلیلش رو میدونم اینه که خب کدهای برنامه نویسی این کدها را میسازند برای همین وقتی "ذخیره تنظیمات" زده میشه همه کدها از اول نوشته میشن (تا حدودی)
      ولی سوالم اینه که چرا مداد زرد یا Visual Composer این اتفاق براش نمیوفته. ینی کدهاش رو کجا می‌نویسه که باقی می‌مونه؟