Вы можете добавить mouseenter
и mouseleave
, как показано ниже, чтобы действовать как при наведении курсора
$(document).ready(function() {
$('.categorie-title').on('mouseenter', function () {
$('.vertical-menu-list').slideDown();
});
$('.vertical-menu').on('mouseleave', function () {
$('.vertical-menu-list').slideUp();
});
});
li {
list-style: none;
}
.vertical-menu {
width: 100%;
position: relative;
}
.vertical-menu > span {
background: #03A9F4 none repeat scroll 0 0;
color: #fff;
cursor: pointer;
display: block;
font-size: 15px;
font-weight: 500;
margin: 0;
padding: 14px 30px 12px;
position: relative;
text-transform: uppercase;
height: 49px;
}
.vertical-menu > span::after, .search-box-view .submit::before {
content: "";
font-family: FontAwesome;
font-size: 18px;
font-weight: normal;
position: absolute;
right: 13px;
top: 50%;
transform: translateY(-50%);
}
.has-mega-menu {
line-height: 43px;
float: left;
padding: 0;
background-color: #3e3e3e;
width: 220px;
}
.vertical-menu-list {
background: #fff none repeat scroll 0 0;
left: 0;
padding: 0 25px;
position: absolute;
top: 100%;
width: 100%;
z-index: 999;
border: 2px solid #03A9F4;
border-top-width: 0;
}
.vertical-menu-list > li {
position: relative;
}
.vertical-menu-list > li > a, .category-menu li a {
color: #333;
display: block;
font-size: 14px;
font-weight: 400;
line-height: 19px;
overflow-wrap: break-word;
padding: 17px 0;
position: relative;
text-align: left;
text-transform: capitalize;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.vertical-menu-list > li span, .category-sub li span {
display: inline-block;
width: 35px;
}
.vertical-menu-list > li:hover ul.ht-dropdown {
visibility: visible;
-webkiit-transform: scaleY(1);
-webkit-transform: scaleY(1);
transform: scaleY(1);
opacity: 1;
}
.vertical-menu-list > li ul.megamenu {
background: #fff none repeat scroll 0 0;
border: 1px solid #e5e5e3;
-webkit-box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
left: 100%;
padding: 10px;
top: 0;
width: 905px;
}
.vertical-menu-list .ht-dropdown:before {
background-color: #fff;
border-color: #f1f1f1 transparent transparent #f1f1f1;
-o-border-image: none;
border-image: none;
border-style: solid;
border-width: 1px;
content: "";
display: block;
height: 15px;
left: -8px;
position: absolute;
top: 21px;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
width: 15px;
}
.vertical-menu-list > li:nth-child(n) > a:after {
content: "\f107";
font-family: 'FontAwesome';
position: absolute;
top: 20px;
right: 15px;
-webkit-transition: all 0.5s;
transition: all 0.5s;
}
.vertical-menu-list > li:nth-child(n):hover > a:after {
-wekit-transform: rotate(-90deg);
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.has-mega-menu a:hover {
color: #03A9F4;
white-space: normal;
text-decoration: none;
}
.fix {
overflow: hidden;
}
.ht-dropdown {
background: #fff;
left: 0;
opacity: 0;
padding: 10px 20px;
position: absolute;
top: 100%;
-webkiit-transform: scaleY(0);
-webkit-transform: scaleY(0);
transform: scaleY(0);
-webkit-transform-origin: 0 0 0;
transform-origin: 0 0 0;
width: 150px;
text-align: left;
visibility: hidden;
z-index: 99999999;
-webkit-transition: 0.5s;
transition: 0.5s;
-webkit-box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
-ms-box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
}
.sub-menu.mega-menu {
left: 100%;
padding: 0;
top: 0;
background-color: #ffffff;
}
.sub-menu.mega-menu .row .mega-col {
display: inline-block;
position: relative;
vertical-align: top;
width: 20%;
height: 100%;
overflow: hidden;
}
.sub-menu.mega-menu .mega-content:last-child {
border: medium none;
margin-bottom: 0;
padding-bottom: 0;
}
.sub-menu.mega-menu .mega-item-title {
font-size: 13px;
font-family: sans-serif;
text-align: left;
font-weight: 500;
overflow: hidden;
text-overflow: ellipsis;
}
ul.menu {
float: left;
}
.megamenu ul {
position: relative;
margin: 0;
padding: 0 15px;
}
.has-mega-menu ul.menu > li.menu-item {
width: 100%;
float: none;
text-align: left;
padding: 0 0 0 10px;
}
.main-menu ul li a, .megamenu ul li a {
display: block;
line-height: 1.5;
font-size: 12px;
}
.menu-hidden {
display: none;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-4 hidden-xs">
<div class="vertical-menu">
<span class="categorie-title">All Categories </span>
<nav class="has-mega-menu">
<ul class="vertical-menu-list menu-hidden">
<li>
<a class="" href="javascript:void(0)"><span><i class="fa fa-leaf"></i></span>IT</a>
<ul class="ht-dropdown megamenu">
<li class="megamenu-three-column fix">
<div class="sub-menu mega-menu">
<div class="row">
<ul class="mega-col"><li class="mega-content">
<a href="#" class="mega-item-title">Components</a>
<ul class="menu">
<li class="menu-item"><a href="#">Motherboards</a></li>
<li class="menu-item"><a href="#">Memories</a></li>
</ul>
</ul>
<ul class="mega-col"><li class="mega-content">
<a href="#" class="mega-item-title">Software</a>
<ul class="menu">
<li class="menu-item"><a href="#">Windows</a></li>
<li class="menu-item"><a href="#">Office</a></li>
</ul>
</ul>
</div>
</div>
</ul>
</li>
<li>
<a class="" href="javascript:void(0)"><span><i class="fa fa-black-tie"></i></span>Fashion</a>
<ul class="ht-dropdown megamenu">
<li class="megamenu-three-column fix">
<div class="sub-menu mega-menu">
<div class="row">
<ul class="mega-col"><li class="mega-content">
<a href="#" class="mega-item-title">Shoes</a>
<ul class="menu">
<li class="menu-item"><a href="#">Some Shoes</a></li>
<li class="menu-item"><a href="#">Another Shoes</a></li>
</ul>
</ul>
<ul class="mega-col"><li class="mega-content">
<a href="#" class="mega-item-title">Dresses</a>
<ul class="menu">
<li class="menu-item"><a href="#">Dresses 1</a></li>
<li class="menu-item"><a href="#">Dresses 2</a></li>
<li class="menu-item"><a href="#">Dresses 3</a></li>
</ul>
</ul>
</div>
</div>
</ul>
</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</body>
</html>
Мы относимся к нему очень серьезно в нашем магазине. Мы не позволяем нестандартный SQL или расширения, если они не поддерживаются на ВСЕХ основных платформах. Даже затем они отмечаются в рамках кода как нестандартные, и выравнивания необходимы.
Это не до разработчика приложений для создания их запросов выполненными быстро, у нас есть четкое разделение обязанностей. Запрос должен быть оптимизирован только самим DBMS или настройкой DBAs DBMS.
Реальные базы данных, как DB2/z :-), обрабатывают стандартный SQL много быстро.
Причина мы осуществляем это, состоит в том, чтобы дать клиентский выбор. Им не нравится идея быть больше заблокированными в определенного поставщика, чем мы.
Я голосую против стандартного/не зависящий от производителя продукта sql
Так квинтэссенция: - если нет никакого требования для независимости поставщика, будьте специализированы для поставщика, которого Вы на самом деле используете. - Если существует требование для независимости поставщика, удостоверяются что, кто когда-либо оплачивает счет, что это будет стоить денег. Удостоверьтесь, что Вы имеете каждый rdbms в наличии для тестирования. И используйте его также - Помещенный каждая часть sql в специальном слое, который является сменным, таким образом, можно использовать питание базы данных И работать с различными поставщиками - Только там, где различием является чистый вопрос синтаксиса, идут со стандартом, например, использованием нотации оракула для (внешних) соединений по сравнению с синтаксисом стандарта ANSI.
По моему опыту, мобильность запроса оказывается не настолько важной. Мы работаем с различными источниками данных (главным образом MSSQL и MySQL), но мы знаем, какие данные хранятся, где и может оптимизировать соответственно. Так как мы управляем системами, мы решаем, когда - если когда-нибудь - структуры перемещены и запросы должны быть переписаны.
Мне также нравится использовать определенную другую определенную для сервера функциональность, такую как уведомление о запросе в SQL Server, который не предлагает MySQL. Таким образом, там, снова, мы используем его, когда мы можем и не волноваться о мобильности.
Кроме того, части наших приложений должны запросить информацию о схеме и действовать на нее. Здесь, снова, у нас есть определенный для сервера код для различных систем, вместо того, чтобы пытаться ограничить нас наименьшим общим знаменателем.
Нет никакого четкого ответа, желательна ли мобильность SQL или не - она действительно во многом зависит от ситуации, такой как тип приложения.
Если приложение будет быть сервисом - т.е. только когда-либо будете Вы размещающий его, то, очевидно, никто, но Вы будете заботиться, является ли Ваш SQL достаточно портативным, таким образом, Вы могли безопасно проигнорировать его, пока у Вас нет определенных планов отбросить поддержку Вашей текущей платформы.
Если приложение будет установленным на многих сайтах, которые у каждого есть их собственные установленные системы баз данных, очевидно, мобильность SQL очень важна для людей. Это позволяет Вам расширить свой потенциальный рынок и может дать немного части ума клиентам, которые находятся на заборе в отношении их системы баз данных. Хотите ли Вы поддерживать это, или Вы - счастливая продажа только, например, клиенты Oracle, или только клиентам MySQL/PostgreSQL, например, ваше дело и что Вы думаете, что Ваш рынок.
Если Вы кодируете в PHP, то подавляющее большинство Ваших потенциальных клиентов, вероятно, собирается ожидать MySQL. Если так, затем это не имеет большого значения для принятия MySQL. Или так же если Вы находитесь в C#/.NET затем, Вы могли бы принять Microsoft SQL Server. Снова, однако, существует оборот, потому что там может существовать маленький, но менее конкурентный рынок PHP или пользователей.NET, которые хотят соединиться с другими системами баз данных, чем обычное.
Таким образом, я в основном рассматривал бы это как вопрос об исследовании рынка, если как в моем первом примере Вы не предоставляете размещенную услугу, где он не имеет значения для пользователей, в этом случае это для Вашего собственного удобства только.