View Full Version : صفت active کار نمیکند
pary_daryayi
پنج شنبه 06 شهریور 1393, 10:37 صبح
سلام . من این منو رو دارم :
<nav> <ul id="menu"> <li><a href="index.php">صفحه اصلي</a></li> <li><a href="gallery.php">گالري</a></li> <li><a href="Wine.html">موزيك</a></li> <li><a href="Contacts.php">تماس با ما</a></li> </ul> </nav>
میخوام وقتی روی یکی از منو ها کلیک کردم ، اون منو active بشه و مشخص باشه که الان در صفحه ی مربوط به این منو هستیم . به چند شکل نوشتم اما نتیجه نمیده :#menu li.active a{color:yellow}#menu li a:active{color:yellow}menu li:active{ background-color:#CC3333}
Mori Bone
پنج شنبه 06 شهریور 1393, 10:48 صبح
:active واسه موقعی هست که روی شی کلیک میشه. واسه اینکه روی شی کلیک شد اون صفات بمونه به روش زیر عمل کنید:
<script>
$('#menu > ul > li').click(function() {
$(this).addClass('active');
});
</script>
<style>
#menu > ul > li.active {
background: #000;
}
</style>
pary_daryayi
چهارشنبه 19 شهریور 1393, 10:54 صبح
ممنون . کدی که دادید کار نمیکنه . اما کدهای زیر کار میکنند
کد html :
<nav>
<ul id="menu">
<li><a href="index.php">خانه</a></li>
<li><a href="classlist.php">لیست کلاسها</a></li>
<li><a href="gallery.php">گالری</a></li>
<li><a href="news.php">علمی - ورزشی</a></li>
<li class="end"><a href="contact.php">تماس با من</a></li>
</ul>
</nav>
کد js:
<script>
jQuery(document).ready(function($) {
$('#menu li').each(function(){
if(window.location.href.indexOf($(this).find('a:fi rst').attr('href'))>-1)
{
$(this).addClass('active').siblings().removeClass( 'active');
}
});
});
</script>
کد css:
.active { background-color:#000}
این کدها کار میکنند و باعث میشه که بک گراند li مشکی بشه .
حالا من میخوام به جای بک گراند li ، رنگ لینک ها تغییر کنه . کد رو به این صورت نوشتم تاثیر نداشت :
<script>
jQuery(document).ready(function($) {
$('#menu li a').each(function(){
if(window.location.href.indexOf($(this).find('a:fi rst').attr('href'))>-1)
{
$(this).addClass('active').siblings().removeClass( 'active');
}
});
});
</script>
.active { color:#000}
به نظرتون چه تغییری باید اعمال بشه ؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.