Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][JavaScript]Ładowanie arkusza CSS po kliknięciu
Forum PHP.pl > Forum > Przedszkole
Dapi
Witam.
Dziś zagadka tongue.gif
Jak za pomocą onclick'a załadować arkusz stylu css?
Mam 2 pliki, jeden jest do całej strony, a drugi do okienka pojawiającego się po kliknięciu.
Drugi jest bardzo duży i nie chcę, żeby ładował się za każdym razem bez potrzeby.
Pozdrawiam.
bastard13
Może po prostu do tego wyskakującego okienka dołącz sobie tag <style> z linkiem do odpowiedniego css'a. Powinno zadziałać.
230005
W funkcji dla onclick tworzysz element <link rel="stylesheet" type="text/css" href="adres.css" media="screen" />. Za pomocą getElementsByTagName('head') wybierasz element do którego należy dodać twój świeżo utworzony element. I to tyle smile.gif.

Edit:
masz tu przykładowy kod:

Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
    <title></title>
    <link rel="stylesheet" href="style.css" type="text/css"/>
    
    <script type="text/javascript">
        
    window.onload = function() {
        var c = document.getElementById('clicker');
        
        c.onclick = function(e) {
        
            var s = document.createElement('link');
            s.setAttribute('rel', 'stylesheet');
            s.setAttribute('href', 'style2.css');
            s.setAttribute('type', 'text/css');
            
            (document.getElementsByTagName('head')[0]).appendChild(s);
            return false;
        }
    };
        
    </script>
    
</head>
<body>
    
    <div id="one">
        <div id="none">
        
        </div>
    </div>

    <a id="clicker">klik</a>
    
</body>
</html>
Dapi
Nie da rady w ten sposób, bo w okienku jest ramka, do której wczytuje się strona, a styl dotyczy obramowania okienka, przycisków na nim, itp, a nie zawartości iframe winksmiley.jpg

230005, zaraz przetestuję smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.