Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS][JavaScript]Ładowanie arkusza CSS po kliknięciu
Dapi
post
Post #1





Grupa: Zarejestrowani
Postów: 186
Pomógł: 13
Dołączył: 7.08.2009

Ostrzeżenie: (0%)
-----


Witam.
Dziś zagadka (IMG:style_emoticons/default/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.
Go to the top of the page
+Quote Post
bastard13
post
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Może po prostu do tego wyskakującego okienka dołącz sobie tag <style> z linkiem do odpowiedniego css'a. Powinno zadziałać.
Go to the top of the page
+Quote Post
230005
post
Post #3





Grupa: Zarejestrowani
Postów: 316
Pomógł: 36
Dołączył: 2.04.2008

Ostrzeżenie: (0%)
-----


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 (IMG:style_emoticons/default/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>


Ten post edytował 230005 11.09.2010, 18:52:24
Go to the top of the page
+Quote Post
Dapi
post
Post #4





Grupa: Zarejestrowani
Postów: 186
Pomógł: 13
Dołączył: 7.08.2009

Ostrzeżenie: (0%)
-----


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 (IMG:style_emoticons/default/winksmiley.jpg)

230005, zaraz przetestuję (IMG:style_emoticons/default/smile.gif)

Ten post edytował Dapi 11.09.2010, 18:46:12
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 17:07