• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Losowe załadowanie pliku ze stylem

Object Storage Arubacloud
0 głosów
89 wizyt
pytanie zadane 4 maja 2020 w JavaScript przez MKolaj15 Bywalec (2,270 p.)
edycja 4 maja 2020 przez MKolaj15
Witam, czy ktoś pomógłby mi napisać kod w javascript, który po załadowaniu strony spowoduje losowe dołączenie jednego z 3 plików .css?

Liczę na pomoc jak najprostszym sposobem, ponieważ nie jestem zbyt zaawansowany.

1 odpowiedź

0 głosów
odpowiedź 4 maja 2020 przez Tpk Nałogowiec (40,100 p.)
wybrane 4 maja 2020 przez MKolaj15
 
Najlepsza
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="css/style1.css">
</head>
<body>
    <script>
        let mainElement = document.getElementsByTagName('link')[0];
        let names = ['style1','style2','style3'];

        let randomValue = getRandomIntInclusive(0, 2);
        replaceLinkHref(`css/${names[randomValue]}.css`, mainElement)

        function getRandomIntInclusive(min, max) {
            min = Math.ceil(min);
            max = Math.floor(max);
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }

        function replaceLinkHref(newValue, handler){
            handler.setAttribute('href', newValue);
        }
    </script>
</body>
</html>

Wszystkie style trzymam w katalogu css są tam odpowiednio nazwane style1, style2, style3.

Te nazwy są też w zmiennej names powyżej, to co się więc dzieje to:

1. Losujemy liczbę z zakresu 0-2 (włącznie - czyli liczby 0,1,2)

2. Wylosowana wartość traktujemy jako indeks tablicy (indeksy tablicy z nazwami plików - indeksy są liczone od 0)

3.Uruchamiamy funkcje replaceLinkHref która dostaje całą ścieżkę (zbudowaną w międzyczasie) i zmienia href pobranego wcześniej elementu (który też dostaje w argumencie).

Ogólnie nie ma tu wiele skomplikowanego a jeżeli jest to max. funkcja getRandomIntInclusive, którą znajdziesz tutaj w przykładach (gotowiec). W razie czego pytaj :)

komentarz 4 maja 2020 przez MKolaj15 Bywalec (2,270 p.)

Dzięki wielkie!!!! Super kod laugh 

Podobne pytania

+1 głos
2 odpowiedzi 107 wizyt
pytanie zadane 29 kwietnia 2017 w HTML i CSS przez adminek Nowicjusz (180 p.)
0 głosów
2 odpowiedzi 428 wizyt
pytanie zadane 27 sierpnia 2018 w JavaScript przez bulit000 Początkujący (460 p.)
0 głosów
0 odpowiedzi 78 wizyt

92,565 zapytań

141,416 odpowiedzi

319,596 komentarzy

61,948 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...