Как сделать рабочий заголовок с помощью JavaScript? - PullRequest
0 голосов
/ 11 декабря 2018

Я работаю над блогом для школьного проекта, и мой первый абзац закончен, поэтому я подумал, что было бы неплохо закончить мой заголовок, но проблема в том, что я не знаю как.

Что яХотелось бы иметь заголовок, который меняет границу вокруг всех предметов в заголовке на место, где вы находитесь на странице.Например, когда вы нажимаете кнопку «Пуск» или «voorstellen» в моем заголовке, на этом объекте появляется рамка.

И возможно ли, что если вы нажмете на логотип льва, вы вернетесь к началу (идентификаторверх "voorstellen10").

body {
    /*geld voor alles */
    height: 100%;
    margin: 0;
    background: black;
}

.centered {
    /* maak tekst in het midden*/
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.header {
    /*balk boven aan gemaakt met w3schools en hulp van forums */
    background-color: transparent;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1;
    color: white;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 150px;
    padding: 5px 20px;
    margin-top: 30px;
}

.content {
    /* geen idee stond op w3schools */
    padding: 16px;
}

.sticky {
    /* voor de header*/
    position: fixed;
    top: 0;
    width: 100%;
}

.sticky + .content {
    /* voor de header */
    padding-top: 102px;
}

.logo {
    /* logo linksboven */
    Width: 150px;
    height: auto;
    filter: brightness(0) invert(1);
    float: left;
}

h1.startdereis {
    /* tekst met start de reis */
    color: white;
    text-transform: uppercase;
    font-size: 70px;
    text-align: center;
    margin-top: -80px;
    font-family: sans-serif;
}

.straatfoto {
    /* de straat met een donker filter */
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(https://i.ibb.co/WppGWkx/straat.jpg);
    height: 100vh;
    background-size: cover;
    background-position: center;
}

.knop {
    /* start knop */
    margin-top: 30px;
    margin-left: 550px;
}

.knop1 {
    /* start knop*/
    border: 3px solid white;
    padding: 10px 30px;
    color: white;
    text-decoration: none;
    margin-right: 5px;
    font-size: 13px;
    text-transform: uppercase;
    background-color: darkorange;
    font-family: "Roboto", sans-serif;
    margin-left: -300px;
}

.hoofd-nav {
    /* voor de header */
    float: right;
    list-style: none;
    margin-top: 30px;
    padding-right: 100px;
}

.hoofd-nav li {
    /* voor de header */
    display: inline-block;
}

.hoofd-nav li a {
    /* voor de header */
    color: white;
    text-decoration: none;
    padding: 5px 20px;
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    border: 3px solid transparent;
}

.hoofd-nav li a.actief {
    /* maakt een vierkantje om de actieve onderwerp */
    border: 3px solid white;
}

.hoofd-nav li a:hover {
    /* maakt een blokje als je er overheen gaat */
    border: 3px solid white;
}

.voorstellen {
    max-width: 600px;
    font-size: 20px;
    color: white;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
    font-family: sans-serif;
    padding-top: 20px;
}
<!DOCTYPE html>
<html>

<head>
    <title> Duco's Blog </title>
    <link rel="stylesheet" type="text/css" href="style.css">
    <meta name="viewport" content="width=device-width, initial-scale=1">
</head>

<header>
    <div class="header" id="myHeader">
        <img class="logo" src="http://www.pngonly.com/wp-content/uploads/2017/06/Lion-Tattoo-Clipart-PNG-Image-03.png">
        <ul class="hoofd-nav">
            <li><a href="#voorpagina10" class="actief"> Home </a></li>
            <li><a href="#textjump"> Voorstellen </a></li>
            <li><a href=""> Hobby's </a></li>
            <li><a href=""> Toekomstdromen </a></li>
        </ul>
    </div>
    <script>
        window.onscroll = function() {
            myFunction()
        };

        var header = document.getElementById("myHeader");
        var sticky = header.offsetTop;

        function myFunction() {
            if (window.pageYOffset > sticky) {
                header.classList.add("sticky");
            } else {
                header.classList.remove("sticky");
            }
        }

    </script>
</header>

<body>
    <div class="container">
        <div class="straatfoto" id="voorpagina10"></div>
        <div class="centered">
            <h1 class="startdereis">Start De Reis</h1>
            <div class="knop">
                <a href="#textjump" class="knop1"> Start </a>
            </div>
        </div>
    </div>
    <div class="voorstellen" id="textjump">
        <h2>Wie ben ik?</h2>
        <p>Mijn volledige naam is Duco Gerard van de Schepop. Mijn tweede naam komt van mijn hele muzikale opa, die ik helaas nooit gekent heb. Op het moment dat ik werd geboren had ik geen opa's meer en nog maar een oma. Mijn enige oma die nog leefde woonde in Duitsland. We zochten haar meestal om de vakantie op. Voor mij was het meestal best saai want ik sprak toen ik klein was nog geen Duits, dus was het moeilijk om met mijn oma te praten en in een bejaardenhuis is nou eenmaal weinig te doen. Toen ik in de tweede klas wat Duits had geleerd en zover was om zelf een gesprek met mijn oma aan tegaan i.p.v dat mijn ouder het zouden vertalen stierf mijn rond die tijd jammer genoeg.
            <br><br>
            Het was misschien al een beetje duidelijk maar ik heb dus een familie die dus uit Duitsers en uit Nederlanders bestaat. Contact hebben met de Duitse kant van de familie is erg lastig omdat het best een stuk rijden is naar Duitsland. Als ik dus tijd doorbreng met famillie is het meestal met de famillie uit Nederland, wat ik eigenlijk niet heel erg vindt. Ik heb een hele leuke familie en daar ben ik erg blij mee.
            <br><br>
            Nu even genoeg over mijn opa's en oma's. Ik woon vijtien jaar in Soest met mijn vader, moeder en sinds dat ik drie werd ook een kleiner zusje. Er is niet echt iets bijzonders dat ik kan vertellen over mijn gezin, we zijn gewoon gewoontjes. Ikzelf zit op dit moment in de vierde klas op Het Baarnsch Lyceum. Mijn paket is NT en het gaat me wel goed af. De school vindt zelf dat ik het zo goed doe dat ik drie uur in de week niet meer hoef te komen. Heel bijzonder is het ook weer niet want die uren waren toch een soort van tussenuren. De bedoeling is dat je in deze uren, waar ik dus niet meer heen ga, huiswerk kan/moet maken dit doet alleen bijna niemand en iedereen zit eigenlijk gewoon te wachten totdat het saaie uur voorbij is.
            <br><br>
            Ik hoop dat ik nu genoeg over mezelf heb verteld en dat je nu al beter weet wie ik ben. Ik weet dat ik niet een heel spannend vaarhaal heb maarja, ik moet nou eenmaal een blog maken hè.
            <br><br>
        </p>               
    </div>

</body>

</html>

1 Ответ

0 голосов
/ 12 декабря 2018

Я выполнил то, что вы просите, но я вежливо прошу вас об этом в следующий раз, вы всегда должны попробовать сами, и если вы не можете этого сделать, Google - ваш друг:)

И наконец, вот код: https://codepen.io/anon/pen/qLdVLO?editors=1100

Он выполняет все, что вы просили.

Я прикрепил прослушиватели щелчков, чтобы добавлять границы при нажатии кнопок следующим образом:

document.getElementById("but4").addEventListener("click", function() {
   document.getElementById("but1").classList.remove("actief");
   document.getElementById("but2").classList.remove("actief");
   document.getElementById("but3").classList.remove("actief");
   document.getElementById("but4").classList.add("actief");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...