我正在尝试使用顶部导航栏设置仅限本地使用的网站。由于该站点将是多个页面,并且导航栏选项可以经常更改,因此我认为我可以使用SSI或类似的东西来引用所有页面。我在这里问过这个问题:How to mimic SSI for a local site
有人建议我使用iframe,这就是我现在要尝试的。但是,当菜单下拉时,它将停在iframe的底部。菜单div是否可以扩展到iframe之外?
答案 0 :(得分:0)
<div class="nav"></div>
<script src="nav.js"></script>
var navDiv = document.getElementById("nav");
if (navDiv) {
var active = "/page3"; // location.pathname
var navHtml = `
<ul>
<li class="${active=="/home"?"active":""}">Home</li>
<li class="${active=="/about"?"active":""}">About</li>
<li class="${active=="/page1"?"active":""}">Page1</li>
<li class="${active=="/page2"?"active":""}">Page2</li>
<li class="${active=="/page3"?"active":""}">Page3</li>
<li class="${active=="/page4"?"active":""}">Page4</li>
<li class="${active=="/page5"?"active":""}">Page5</li>
</ul>`;
navDiv.innerHTML = navHtml;
// document.querySelector(".active").scrollIntoView();
var el = document.querySelector(".active")
navDiv.scroll({
top: el.offsetTop - 10,
behavior: 'smooth'
});
}
.active {
color: red
}
#nav {
overflow: auto;
height: 50px;
width: 100px;
border: 1px solid black;
}
<div id="nav"></div>