我想將下拉選單添加到我當前的導航欄。我試過這段代碼,但下拉內容消失了,現在我沒有任何想法來編輯代碼以使其正常作業。在我最后一次編輯后,它只顯示下拉選單,但我沒有點擊任何鏈接。Dropdown,dropbtn 被添加到之前的代碼中。你能幫我解決這個問題嗎?非常感謝!
這是代碼:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="shortcut icon" type="image/x-icon" href="menu.png" />
<title>MENU | úvodné menu</title>
<meta charset=utf-8>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<style>
body {
height: 100%;
background-image: linear-gradient(orange, red);
}
</style>
<style>
body,h1 {font-family: "Raleway", sans-serif}
body, html {height: 100%}
.bgimg {
background-image: linear-gradient(orange, red);
min-height: 100%;
background-position: full;
background-size: ;
}
</style>
<style>
* {box-sizing: border-box;}
body {
margin: 0;
font-family: Arial, Helvetica, sans-serif;
}
.dropdown .dropbtn {
font-size: 16px;
border: none;
outline: none;
color: white;
padding: 14px 16px;
background-color: inherit;
font-family: inherit;
margin: 0;
}
.header {
overflow: hidden;
background-color: orange;
padding: 20px 10px;
}
.header a {
float: left;
color: white;
text-align: center;
padding: 12px;
text-decoration: none;
font-size: 18px;
line-height: 25px;
border-radius: 4px;
}
.header a.logo {
font-size: 25px;
font-weight: bold;
}
.header a:hover {
background-color: #ddd;
color: black;
}
.header a.active {
background-color: red;
color: white;
}
.header-right {
float: right;
}
@media screen and (max-width: 500px) {
.header a {
float: none;
display: block;
text-align: left;
}
.header-right {
float: none;
}
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.dropdown-content a {
float: none;
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
text-align: left;
}
.dropdown-content a:hover {
background-color: #ddd;
}
.dropdown {
float: left;
overflow: hidden;
}
.dropdown:hover .dropdown-content {
display: block;
}
.dropbtn:hover ~ .dropdown-content {display: block;}
</style>
</head>
<body onload="startTime()">
<div class="header">
<a id="txt" hidden></a>
<img src="https://i.ibb.co/6Nkbdb3/dlhemenu-1-1-1.png" class="logo" title="Odhlási? sa" alt="MENU logo" width="150" height="50" onclick="window.location='/logout.php'">
 
<a class="dropbtn"><i class="fa fa-user"> </i>Dropdown
<i class="fa fa-caret-down"></i>
</a>
<div class="dropdown-content">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</div>
<div class="header-right">
<a class="active" href="/welcome.php">úvodné menu</a>
<a href="/online.html">Online hodiny</a>
<a href="/vyplnit.html">Testy na vyplnenie</a>
<a href="/znamky3.html">Známky</a>
<a href="/rozvrh.html">Rozvrh hodín</a>
<a href="/dochadzka.html">Dochádzka</a>
<a href="/ucenie.html">U?ebny materiál</a>
<a href="/hry.html">Hry</a>
<a href="/omne.php">O mne</a>
</div>
</div>
uj5u.com熱心網友回復:
對于這種情況,我建議使用Bootstrap,它會讓您的生活更輕松。它主要允許人們在不離開 HTML 的情況下應用一些不錯的功能。
這是bootstrap v4.6 導航欄檔案的鏈接。而在這里,你可以找到所有的檔案。
您可以嘗試在您的網站中集成以下內容:
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.slim.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" defer></script>
<title>MENU | úvodné menu</title>
<meta charset=utf-8>
</head>
<body>
<!-- Start of navbar -->
<nav class="navbar navbar-expand-sm navbar-dark" style="background:#FFBD35">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavDropdown">
<ul class="navbar-nav">
<!-- Section_1 link -->
<li class="nav-item active">
<a class="nav-link" href="#">úvodné Menu<span class="sr-only">(current)</span></a>
</li>
<!-- Section_2 link -->
<li class="nav-item">
<a class="nav-link" href="#">Online hodiny</a>
</li>
<!-- Section_3 link -->
<li class="nav-item">
<a class="nav-link" href="#">Testy na vyplnenie</a>
</li>
<!-- Dropdown -->
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-toggle="dropdown" aria-expanded="false">
<i class="fa fa-user"></i> Dropdown
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</li>
</ul>
</div>
</nav>
<!-- End of navbar -->
</body>
</html>
uj5u.com熱心網友回復:
如果我正確理解您的問題,您是在尋找一個簡單的 js 下拉選單嗎?
這是一個簡短的例子
HTML:
<html lang="en">
<head>
<!-- your header settings -->
<link rel="stylesheet" href="page.css">
</head>
<body>
<header>
<span id="dropbtn">
<span class="fa fa-user"></span>
<span>Dropdown</span>
<span class="fa fa-caret-down"></span>
</span>
<div id="dropdown-content" class="hidden">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</div>
</header>
<script src="menu.js"></script>
</body>
</html>
首先是在這個例子中的 HTML、CSS 和 JS 在單獨的檔案中。比您獲得更好的概述,您的代碼將來可能可以重用;)
CSS:
.hidden {
display:none;
}
JavaScript:
function clickListener_btn(event){
/** @type {HTMLElement} */
let clickedElement = event.currentTarget();
/** @type {HTMLElement} */
let dropDownMenu = document.querySelector('#dropdown-content');
if(dropDownMenu.classList.has('hidden') {
dropDownMenu.classList.remove('hidden');
} else {
dropDownMenu.classList.add('hidden');
}
}
/** @type {HTMLElement} */
let btn = document.querySelector('#dropbtn');
btn.addEventListener('click', clickListener_btn);
您的代碼的問題 1。您單擊“<a>標記為”按鈕。因此將強制創建一個新的 Link。如果您沒有設定 href ,它會自動運行重新加載。這是因為在示例中一個簡單的<span>元素被用作按鈕。
我希望這會對你有所幫助。
還有另一件事。我很確定資料庫中的下拉選單有很多問題。嘗試查找示例來修復您的代碼。
另一個技巧可以是僅使用 css 進行下拉,但我認為這在開始時會很困難。或者使用您最喜歡的搜索引擎查找“僅 css 下拉串列”
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/387791.html
標籤:javascript html 查询 css 导航
上一篇:JqueryResizableHandleLeft(e)問題
下一篇:如何連接兩個盒子幾何圖形?
