Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> skrypt JS piszący tekst - problem :|
cybertix
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.08.2007

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


Witam dopiero zacząłem sie uczyć Javascriptu
Napisałem na razie takie coś


Kod
<html>
<head>
    <title> Skrypt_01 </title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
    <style type="text/css">
    body{
        background-color: black;
    }
    div{
        background-color: #4080A0;
        color: white;
        height: 20px;
        padding: 10px;
    }
    </style>
    
    <script type="text/javascript">
    //
        //-------------------------------------------------------------------------------------------
        
        var news = new Array();
            news[0] = 'BARDZO obciążam procka i przeglądarke :P';
            news[1] = 'Działam chyba tylko pod przeglądarką -> Opera :|';
        
        var ktore = 0;
        
        //-------------------------------------------------------------------------------------------
        
        function sleep(millis)
        {
                var date = new Date();
                var curDate = null;

                do { curDate = new Date(); }
                while(curDate-date < millis);
        }

        //-------------------------------------------------------------------------------------------
        
        function write(ile)
        {
            var div = document.getElementById('content');
            
            if(ktore == ile)
            {
                div.innerHTML = '';
                return;
            }
            
            div.innerHTML = '';
            
            for(var i=0; i<news.length; i++)
            {
                for(var j=0; j<news[i].length+1; j++)
                {
                    div.innerHTML = news[i].substr(0, j) + '<span style="color:red"> _ </span>';
                    if(j == news[i].length)
                    {
                        div.innerHTML = news[i];
                        sleep(1000);
                    }
                    else
                        sleep(100);
                }
                sleep(2000);
            }
            
            ktore++;
            
            return write(ile);
        }
        
        //-------------------------------------------------------------------------------------------
        
        function ustaw()
        {
            document.getElementById('content').innerHTML = ' | skrypt | : Zaraz zaczne pisać';
            sleep(1000);
            write(2);
        }
        
        //-------------------------------------------------------------------------------------------
    //
    </script>
</head>

<body onLoad="ustaw();">
    <div id="content">
        
    </div>
</body>
</html>



Skrypt działa pod przeglądarką Opera a pod IE i Firefoxem nie działa (innych nie testowałem) :|
Pisze on tekst (prawie jak na o2.pl ten na prawo od panelu logowania)

Skrypt 'zawiesza IE i Firefoxa', użycie procesora jest bardzo duże(od 85 do 95%)
myśle że jest to spowodowane funkcją sleep() - znalazłem ją w necie
na początku miałem pętle for i było to samo
Kod
for(var i=0; i<30000000; i++);


Co zrobić żeby ten skrypt działał pod IE i Firefoxem i najlepiej żeby nie brał tyle użycia CPU ?

Wiem że mogłem zerżnąć z o2.pl ale to nie to samo jak napisać prawie cały sam (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Prosze was forumowiczów o pomoc

Ten post edytował cybertix 6.01.2009, 20:35:00
Go to the top of the page
+Quote Post

Posty w temacie


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: 24.12.2025 - 22:04