gpt4 book ai didi

html - jQuery 弹出式菜单。将一个元素从其父元素中分离出来

转载 作者:太空狗 更新时间:2023-10-29 12:36:42 26 4
gpt4 key购买 nike

我正在处理一个 Shopify 元素。我不是设计师。我需要为商店制作弹出式菜单。问题有两方面。首先,弹出窗口需要延伸到视口(viewport)的底部。其次,我想将 Navigation Div 中的所有内容捆绑在一起,但我需要弄清楚如何将元素从其父元素中分离出来,然后在不四处移动的情况下将其“分层”在其余内容之上。

我想我只是用 CSS 隐藏菜单,然后使用 jQuery 在鼠标悬停时取消隐藏它。我不认为那会起作用。我不知道如何定位弹出窗口,这样它就不会影响周围的一切。

现在是这个网站: https://hodkiewicz-zieme-and-hirthe180.myshopify.com/

它应该是这样的:http://tinypic.com/r/35hnyox/6

这是当前导航栏中的内容。我可能会更改结构。

<div id="navbar" class="green">
<ul id="navigation">
{% for link in linklists.main-menu.links %}
<li><a class="green" href="{{ link.url }}">{{ link.title }}</a></li>
{% endfor %}
<li><a class="green" href="#">{{ linklists.packard.title }}</a>
<ul class="sub-menu">
<li><a class="green" href="#">-1930 Speedster</a></li>
<li><a class="green" href="#">-1929-31 Super 8</a></li>
<li><a class="green" href="#">-Late 1931-32 Super 8</a></li>
<li><a class="green" href="#">-1929-31 Standard 8</a></li>
<li><a class="green" href="#">-Late 1931-32 Standard 8</a></li>
<li><a class="green" href="#">-Rare Parts</a></li>
<li><a class="green" href="#">-745 Parts</a></li>
</ul>
</li>
<li><a class="green" href="#">{{ linklists.cadillac.title }}</a>
<ul class="sub-menu">
<li><a class="green" href="#">-1932-33 V12 &amp; V16</a></li>
<li><a class="green" href="#">-1934-37 V12 &amp; V16</a></li>
</ul>
</li>

<li><a class="green" href="/cart">Cart</a></li>
<li><a class="green" href="/checkout">Check Out</a></li>
</ul><!--Navigation--><!--Navigation-->

<ul class="sub-navs">
<ul class-"sub-nav">
<li>Carburetor</li>
<li>Parts</li>
<li>Manifolds</li>
<li>Accessories</li>
<li>Sculpture</li>
</ul>
</ul>

<img id="#navbar-logo" src="{{'logo.png' | asset_url}}">
<p id="nav-phone" class="black center bold">775.842.4282</p>
<p class="black center nav-small bold">packardcarbs@gmail.com</p>
<p class="black ce

nter nav-small bold">Sparks, NV USA</p>
</div><!--Navbar-->

最佳答案

这是所需的输出,其中包含所讨论的确切功能。

代码见 fiddle :http://jsfiddle.net/NNfUb/2/

演示: http://jsfiddle.net/NNfUb/2/embedded/result

CSS:

#content
{
position:relative;
}

#flyout_container
{
position:absolute;
width:175px;
top:0;
left:0;
background:#107042;
display:none;
}

.sub-nav
{
padding:0;
margin:0;
display:none;
}

.sub-nav li
{
padding:5px 5px 5px 10px;
display:block;
color:#fff;
font-size:14px;
font-weight:bold;
}

jQuery:

$(document).ready(function(){
var container = $("<div id='flyout_container'>");
container.appendTo($("#content"));
var contentHeight = $("#content").height();
container.css({"height": (contentHeight + 10) + "px"});

$("a#show_sub_nav_1").mouseover(function(){
$("#sub_nav_1").appendTo(container).show();
container.toggle();
//container.show();
var fromTop = parseInt($(this).offset().top);
$("#sub_nav_1").css({"margin-top": (fromTop - 205) + "px"});
});

$("#flyout_container").mouseleave(function(){
$("#flyout_container").hide();
});

});

我通过从您的网页复制您的源代码并对其进行处理,创建了上述 fiddle 。我已经创建了全高度功能,该功能将高度提高到内容高度,并根据屏幕截图中提供的所需设计显示子链接。如果您需要任何更改或增强,则需要修改 css 或代码。它适用于每个视口(viewport)。

注意:如果有任何问题,请告诉我。我希望这能解决您的问题,因为我使用了不同的方法。

关于html - jQuery 弹出式菜单。将一个元素从其父元素中分离出来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13945256/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com