Thursday 12 April 2018

How to create tabbing in jQuery

<!---------------------------------------------HTML---------------------------------------------->

<div class="container">

    <ul class="tabs">
        <li class="tab-link current" data-tab="tab-1">Tab One</li>
        <li class="tab-link" data-tab="tab-2">Tab Two</li>
        <li class="tab-link" data-tab="tab-3">Tab Three</li>
        <li class="tab-link" data-tab="tab-4">Tab Four</li>
    </ul>

    <div id="tab-1" class="tab-content current">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </div>
    <div id="tab-2" class="tab-content">
         Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
    </div>
    <div id="tab-3" class="tab-content">
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
    </div>
    <div id="tab-4" class="tab-content">
        Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </div>

</div><!-- container -->

<!--------------------------------------------css---------------------------------------------->

body{
            margin-top: 100px;
            font-family: 'Trebuchet MS', serif;
            line-height: 1.6
        }
        .container{
            width: 800px;
            margin: 0 auto;
        }



        ul.tabs{
            margin: 0px;
            padding: 0px;
            list-style: none;
        }
        ul.tabs li{
            background: none;
            color: #222;
            display: inline-block;
            padding: 10px 15px;
            cursor: pointer;
        }

        ul.tabs li.current{
            background: #ededed;
            color: #222;
        }

        .tab-content{
            display: none;
            background: #ededed;
            padding: 15px;
        }

        .tab-content.current{
            display: inherit;
        }




<!--------------------------------jQuery---------------------------------------------->

<script>
$(document).ready(function(){
   
    $('ul.tabs li').click(function(){
        var tab_id = $(this).attr('data-tab');

        $('ul.tabs li').removeClass('current');
        $('.tab-content').removeClass('current');

        $(this).addClass('current');
        $("#"+tab_id).addClass('current');
    })

})
</script>


Monday 9 April 2018

Add two random class on body in jQuery

<script>
    $(document).ready(function(){
var classes = ["yellow", "pink"];

$("body").each(function(){
    $(this).addClass(classes[~~(Math.random()*classes.length)]);
});
});
</script>

Adding class randomly to HTML elements with jQuery

HTML

<div id="menu">
<ul>
    <li>Autos</li>
    <li>Real Estate</li>
    <li>Services</li>
    <li>Boats</li>
    <li>Gardening</li>
</ul>
</div>
 
<script>
$(document).ready(function(){
// create random number
  function randOrder() {
    return ( Math.round(Math.random())-0.5 ); 
  } 
 
$(document).ready(function() {
 
    // classses array
    var classes = [ 'li-one', 'li-two', 'li-three', 'li-four', 'li-five' ];
    // sort array elements randomly
    classes.sort( randOrder );
 
    // uncomment below to see order
    // alert( classes.sort( randOrd ) );
 
    // create loop to add each array element as a class
    $('#menu ul li').each(function(i, val) {
        $(this).addClass(classes[i]);
    });
});
});
</script> 

Wednesday 4 April 2018

How to open dropdown menu on click

<script>
  jQuery(document).ready(function(){
    jQuery('#menu-mobile-menu li > .sub-menu').parent().click(function() {
  var submenu = jQuery(this).children('.sub-menu');
  var submenu2 = jQuery(this).children('.sub-menu-2');
  if ( jQuery(submenu).is(':hidden') ) {
    jQuery(submenu).slideDown(200);
jQuery(this).addClass("chev-down");
  } else {
    jQuery(submenu).slideUp(200);
jQuery(this).removeClass("chev-down");
  }
});
});
    </script>

Friday 9 March 2018

Hide dropdown menu on click outside of the element in jquery

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Hide Dropdown on Click Outside</title>
<style type="text/css">
    ul{
        padding: 0;
        list-style: none;
        background: #f2f2f2;
    }
    ul li{
        display: inline-block;
        position: relative;
        line-height: 21px;
        text-align: left;
    }
    ul li a{
        display: block;
        padding: 8px 25px;
        color: #333;
        text-decoration: none;
    }
    ul li a:hover{
        color: #fff;
        background: #939393;
    }
    ul li ul.dropdown-menu{
        min-width: 100%; /* Set width of the dropdown */
        background: #f2f2f2;
        display: none;
        position: absolute;
        z-index: 999;
        left: 0;
    }
    ul li ul.dropdown-menu li{
        display: block;
    }
</style>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        // Show hide popover
        $(".dropdown").click(function(){
            $(this).find(".dropdown-menu").slideToggle("fast");
        });
    });
    $(document).on("click", function(event){
        var $trigger = $(".dropdown");
        if($trigger !== event.target && !$trigger.has(event.target).length){
            $(".dropdown-menu").slideUp("fast");
        }           
    });
</script>
</head>
<body>
    <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
        <li class="dropdown">
            <a href="#">Products &#9662;</a>
            <ul class="dropdown-menu">
                <li><a href="#">Laptops</a></li>
                <li><a href="#">Monitors</a></li>
                <li><a href="#">Printers</a></li>
            </ul>
        </li>
        <li><a href="#">Contact</a></li>
    </ul>
</body>
</html>                           

Show/Hide Submenu item on click jquery

<nav>
  <ul class="nav">
    <li><a href="#">Menu item 1</a></li>
    <li><a href="#">Menu item 2</a></li>
    <li>
      <a href="#">Menu item with submenu</a>
      <ul class="sub-menu">
        <li><a href="#">Submenu item</a></li>
        <li><a href="#">Submenu item</a></li>
        <li><a href="#">Submenu item</a></li>
      </ul>
    </li>
  </ul>
</nav>

.nav li {
  list-style: none;
  padding: 5px 10px;
}

.nav > li {
  float: left;
}

.nav .sub-menu {
  display: none;
}


// Change 'click' to 'hover' if you want to
<script>
$(document).ready(function(){
$('.nav li > .sub-menu').parent().click(function() {
  var submenu = $(this).children('.sub-menu');
  if ( $(submenu).is(':hidden') ) {
    $(submenu).slideDown(200);
  } else {
    $(submenu).slideUp(200);
  }
});
});
</script>

Tuesday 30 January 2018

Add class after some scroll and remove class when footer appear on screen window in jQuery

<script>
      jQuery(document).ready(function(e) {

    var screen_height = jQuery(window).height();

    var document_height = jQuery(document).height();

    var footer_height = jQuery(".footer").height();

     var max_scroll_height = document_height - screen_height;

    jQuery(window).on('scroll', function(e) {

        var scroll = jQuery(window).scrollTop();

        var element_in_view = scroll > 300;

        var has_reached_bottom_of_page = max_scroll_height - footer_height;

        if (scroll > 300 && scroll < has_reached_bottom_of_page) {

            jQuery('.btSidebar').addClass("changefixed");

        } else {

            jQuery('.btSidebar').removeClass("changefixed");
        }
    });
});
</script>