John Davidson

php - Navbar dropdown toggle immediately disappears upon click on mobile site. bootstrap 3.3.7

0 comments
Message:


The navbar on my website works well on pc but on mobile. Whenever I toggle the dropdown for my navbar and click on the Log-in/sign up, it appears but disappears immediately.


This is my website: www.krakenro.com
This is my code:


<div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="./"><?php echo Flux::config('SiteTitle'); ?></a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<?php $menuItems = $this->getMenuItems(); ?>
<?php if (!empty($menuItems)): ?>
<?php foreach ($menuItems as $menuCategory => $menus): ?>
<?php if (!empty($menus)): ?>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><?php echo htmlspecialchars(Flux::message($menuCategory)) ?> <b class="caret"></b></a>
<ul class="dropdown-menu">
<?php foreach ($menus as $menuItem): ?>
<li>
<a href="<?php echo $menuItem['url'] ?>"><?php echo htmlspecialchars(Flux::message($menuItem['name'])) ?></a>
</li>
<?php endforeach ?>
</ul>
</li>
<?php endif ?>
<?php endforeach ?>
<?php endif ?>

<?php $adminMenuItems = $this->getAdminMenuItems(); ?>
<?php if (!empty($adminMenuItems) && Flux::config('AdminMenuNewStyle')): ?>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Admin Menu <b class="caret"></b></a>
<ul class="dropdown-menu">
<?php foreach ($adminMenuItems as $menuItem): ?>
<li>
<a href="<?php echo $this->url($menuItem['module'], $menuItem['action']) ?>"><?php echo htmlspecialchars(Flux::message($menuItem['name'])) ?></a>
</li>
<?php endforeach ?>
</ul>
</li>
<?php endif ?>

</ul>
</div><!--/.nav-collapse -->
</div>



My Answer:
html


css
.navbar-default .navbar-nav > li > a {
color: #333;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
color: #555;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
color: #555;
background-color: transparent;
}
.navbar-default .navbar-toggle .icon-bar {
background-color: #333;
}
.navbar-default .navbar-toggle:hover .icon-bar {
background-color: #555;
}

javascript
$(document).ready(function(){
$(".dropdown-toggle").click(function(){
$(this).next(".dropdown-menu").toggle();
});
});

Make sure you have included the necessary Bootstrap and jQuery libraries in your project. Also, check for any conflicting CSS or JavaScript that might be causing the issue.

Rate this post

4 of 5 based on 6679 votes

Comments




© 2024 Hayatsk.info - Personal Blogs Platform. All Rights Reserved.
Create blog  |  Privacy Policy  |  Terms & Conditions  |  Contact Us