У меня есть приложение Node / Express в Visual Studio, и я хочу создавать вкладки, поэтому при нажатии на вкладку отображается содержимое ниже.Дело в том, что я использую конвертер HTML -> Pug (я очень новичок в Pug), поэтому я не удивлюсь, если что-то там будет не так.Ниже приведен мой код, но ничего не отображается, и когда я нажимаю на вкладку, он лишь слегка меняет цвет (отображается на вкладке Токио), но не показывает никакого содержимого.
Вот что у меня есть в моем index.pug
:
extends layout
block content
doctype html
html(lang="en")
head
meta(charset='utf-8')
meta(name='viewport' content='width=device-width, initial-scale=1')
section
nav
ul
li.title Study Bot
li.robot
img(src='/images/robot-face.jpg' alt='Robot face' width='130px')
article
footer
// Tab links
.tab
button.tablinks(onclick="openCity(event, 'London')") London
button.tablinks(onclick="openCity(event, 'Paris')") Paris
button.tablinks(onclick="openCity(event, 'Tokyo')") Tokyo
// Tab content
#London.tabcontent
h3 London
p London is the capital city of England.
#Paris.tabcontent
h3 Paris
p Paris is the capital of France.
#Tokyo.tabcontent
iframe#encyclopedia-window(src='https://en.wikipedia.org/wiki/')
В моем main.css
(соответствующие части):
footer {
background-color: #666;
height: 500px;
padding: 10px;
text-align: center;
font-size: 35px;
color: white;
}
.tab {
overflow: hidden;
border: 1px solid #ccc;
background-color: #f1f1f1;
}
/* Style the buttons inside the tab */
.tab button {
background-color: inherit;
float: left;
border: none;
outline: none;
cursor: pointer;
padding: 14px 16px;
transition: 0.3s;
font-size: 17px;
}
/* Change background color of buttons on hover */
.tab button:hover {
background-color: #ddd;
}
/* Create an active/current tablink class */
.tab button.active {
background-color: #ccc;
}
/* Style the tab content */
.tabcontent {
display: none;initial-letter
padding: 6px 12px;
border: 1px solid #ccc;
border-top: none;
}
#encyclopedia-window {
position: relative;
margin-top: 25px;
height: 90%;
width: 95%;
}
Также этопо моему index.js
:
/* Clickable tabs */
function openCity(evt, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}