+ Yanıtla
Toplam 10 sonuçtan 1 ile 10 arası olanlar

Konu Başlığı: Yüzde kaçı yüklenen HTML sayfa ?

  1. #1
    Üye ssonmez's Avatar
    Katılım Tarihi
    21.03.2003
    Yer
    Şehr-i İstanbul - Kıtaların Busesi
    Yaş
    37
    Mesaj
    1,380

    Yüzde kaçı yüklenen HTML sayfa ?

    Arkadaşlar, flash ta olduğu gibi bir HTML sayfanın yüzde kaçının yüklenmekte olduğunu gösterecek bir kod yazmaya çalışıyorum.
    Şu ana kadar , Sayfa tamamen yüklenene kadar yükleniyor yazdıran ve kaybolan bir kod yazdım. Ama çok aramama rağmen bir sayfanın %10-20 si yüklendi gibi bir kod JavaScript ile nasıl yapılır çözemedim.
    Bu nasıl yapılır?

    <HTML>
    <head>
    <title>Loading HTML</title>
    <meta http-equiv="Content-Type" content="text/HTML; charset=">

    <script language="JavaScript">
    <!--
    function yukle() {
    document.getElementById("yukleniyorlayer").style.d isplay='none';
    document.getElementById("sayfam").style.display="" ;
    }
    // -->
    </script>

    </head>

    <body onload="yukle();">

    <div id="yukleniyorlayer" style="position:absolute; width:100%; height:100%;
    z-index:100; background-color: #FFFFFF; layer-background-color: #FFFFFF;
    border: 1px none #000000; visibility: visible"><b>
    <font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">SAYFA
    YÜKLENİYOR ... </font></b></div>

    <table id="sayfam" style="display: none" width="50" border="0"
    cellspacing="0" cellpadding="0">
    <tr>
    <td>sayfanın asıl table ı içerik ...</td>
    </tr>
    </table>

    </body>
    </HTML>
    Mesaj ssonmez tarafından 13.06.2004 (00:41) yeniden düzenlendi.

  2. #2

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    vbscript ile olursa şöyle birşey var..

    Kod:
    <script language=VBScript> 
    <!-- 
    
    // Düzenleme www.ebilisim.net 
    
    Dim Bar, Line, SP 
    Bar = 0  
    Line = "|" 
    sP = 100 
    
    Function Window_onLoad() 
    Bar = 95 
    sP = 10 
    END Function 
    
    Function Count() 
    If Bar < 100 Then 
    Bar = Bar + 1 
    Window.Status = "Yükleniyor: " & Bar & "%" & " " & String(Bar, Line) 
    setTimeout "Count()", SP 
    Else 
    Window.Status = "Yükleme Bitti" 
    Document.Body.Style.Display = ""  
    End If  
    End Function 
    
    Call Count() 
    
    --> 
    </script>

  3. #3
    Üye ssonmez's Avatar
    Katılım Tarihi
    21.03.2003
    Yer
    Şehr-i İstanbul - Kıtaların Busesi
    Yaş
    37
    Mesaj
    1,380

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    @PsyChaos, teşekkür ederim ama bu kod işi çözmüyor,
    Çünkü gerçekte hafızaya ne kadar yüklendiğine bakmıyor. Verilen zaman aralıklarında bara bir çizgi ekleyerek ilerletiyor. Oysa sayfa o arada çoktan yüklenebilir.

    Gerçekten sayfanın kaç kb olduğunu ya da ne kadarının yüklendiğini nasıl buluruz?

  4. #4

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    merhabalar elimde bulunan bi kodu yolluyorum,
    belki işinize yarayabilir..

    ilk olarak bu kodu yazıyoruz..
    Kod:
    <script language="JavaScript1.2">
    
    <!--
    
    <!-- begin hiding
    
    // (C) 2000 Marcin P Wojtowicz [one_spook@Hotmail.com]. All rights reserved.
    
    // Obtain permission before selling/redistributing in any medium.
    
    
    
    startingColor = new Array() // <-- Do not modify!
    
    endingColor = new Array() // <-- Do not modify!
    
    
    
    // YOU MAY MODIFY THE FOLLOWING:
    
    var yourImages = new Array("res/arka.jpg","res/arka2.jpg") // Fill this array with the images you wish to preload
    
    var locationAfterPreload = "main.htm	" // The script will redirect here when the preloading finishes *successfully*
    
    var preloadbarWidth = 250 // The length of the preload bar. Should be greater than total amount of images you want to preload!
    
    var preloadbarHeight = 1 // The height of the gradient/preload bar
    
    var backgroundOfGradient = "black" // Default color while the preload bar is "filling up"
    
    
    
    // Color the preloadbar is starting with - enter 1st, 3rd and 5th numbers/letters of color code
    
    startingColor[0] = "e" 
    
    startingColor[1] = "e"
    
    startingColor[2] = "e"
    
    
    
    // Color the preloadbar is going to end up with - enter the 1st, 3rd and 5th numbers/letters of color code
    
    endingColor[0] = "e"
    
    endingColor[1] = "e"
    
    endingColor[2] = "e"
    
    
    
    // FOR TROUBLESHOOTING:
    
    var gap = 5 // PLAY AROUND WITH THIS SETTING IF YOU GET A JavaScript ERROR!!! 2 is the minumum value!!!
    
    
    
    
    
    // DO NOT MODIFY ANYTHING BEYOND THIS POINT!!!
    
    
    
    if (!document.all) location.replace(locationAfterPreload)
    
    var a = 10, b = 11, c = 12, d = 13, e = 14, f=15, i, j, ones = new Array(), sixteens = new Array(), diff = new Array();
    
    var convert = new Array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"), imgLen = yourImages.length;
    
    var loaded = new Array(), preImages = new Array(), currCount = 0, pending = 0, h = 0, hilite = new Array(), cover = new Array();
    
    var num = Math.floor(preloadbarWidth/gap);
    
    for (i = 0; i < 3; i++) {
    
    	startingColor[i] = startingColor[i].toLowerCase();
    
    	endingColor[i] = endingColor[i].toLowerCase();
    
    	startingColor[i] = eval(startingColor[i]);
    
    	endingColor[i] = eval(endingColor[i]);
    
    	diff[i] = (endingColor[i]-startingColor[i])/num;
    
    	ones[i] = Math.floor(diff[i]);
    
    	sixteens[i] = Math.round((diff[i] - ones[i])*15);
    
    }
    
    endingColor[0] = 0;
    
    endingColor[1] = 0;
    
    endingColor[2] = 0;
    
    i = 0, j = 0;
    
    while (i <= num) {
    
    	hilite[i] = "#";
    
    	while (j < 3) {
    
    		hilite[i] += convert[startingColor[j]];
    
    		hilite[i] += convert[endingColor[j]];
    
    		startingColor[j] += ones[j];
    
    		endingColor[j] += sixteens[j];
    
    		if (endingColor[j] > 15) {
    
    			endingColor[j] -= 15;
    
    			startingColor[j]++;
    
    		}
    
    		j++;
    
    	}
    
    	j = 0;
    
    	i++;
    
    }
    
    function loadImages() {
    
    	for (i = 0; i < imgLen; i++) {
    
    		preImages[i] = new image();
    
    		preImages[i].src = yourImages[i];
    
    		loaded[i] = 0;
    
    		cover[i] = Math.floor(num/imgLen)*(i+1)
    
    	}
    
    	cover[cover.length-1] += num%imgLen
    
    	checkLoad();
    
    }
    
    function checkLoad() {
    
    	if (pending) { changeto(); return }
    
    	if (currCount == imgLen) { location.replace(locationAfterPreload); return }
    
    	for (i = 0; i < imgLen; i++) {
    
    		if (!loaded[i] && preImages[i].complete) {
    
    			loaded[i] = 1; pending++; currCount++;
    
    			checkLoad();
    
    			return;
    
    		}
    
    	}
    
    	setTimeout("checkLoad()",10);
    
    }
    
    function changeto() {
    
    	if (h+1 > cover[currCount-1]) {
    
    		var percent = Math.round(100/imgLen)*currCount;
    
    		if (percent > 100) while (percent != 100) percent--;
    
    		if (currCount == imgLen && percent < 100) percent = 100;
    
    		defaultStatus = "Yükleniyor...";
    
    		pending--;
    
    		checkLoad();
    
    		return;
    
    	}
    
    	eval("document.all.cell" + (h+1) + ".style.backgroundColor = hilite[h]");;
    
    	h++;
    
    	setTimeout("changeto()",1);
    
    }
    
    defaultStatus = "Yükleniyor..."
    
    // end hiding -->
    
    
    
    function MM_openBrWindow(theURL,winName,features) { //v2.0
    
      window.open(theURL,winName,features);
    
    }
    
    //-->
    
    </script>
    ve de sonrada preloading bar için bunu..

    Kod:
            <script language="JavaScript1.2">
    
    <!-- beging hiding
    
    document.write('<table border="0" cellpadding="0" cellspacing="0" width="' + preloadbarWidth + '"><tr height="' + preloadbarHeight + '" bgcolor="' + backgroundOfGradient + '">');
    
    for (i = 0; i < num; i++) {
    
    	document.write('<td width="' + gap + '" id="cell' + (i+1) + '"></td>');
    
    }
    
    document.write('</tr></table>');
    
    
    
    loadImages();
    
    // end hiding -->
    
            </script>

  5. #5
    Üye ssonmez's Avatar
    Katılım Tarihi
    21.03.2003
    Yer
    Şehr-i İstanbul - Kıtaların Busesi
    Yaş
    37
    Mesaj
    1,380

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    @hellfire çok teşekkür ederim. Bu kod güzel ama. Bir resim image preloading esaslı.
    Diyorki tüm resimler yüklenmişse sayfa yüklenmiştir.
    Ama doğru bir önkabul değil bu.

    Zaetn bu kodda ki en önemli kısım img.length / bir resmin boyu.

    Aradığım document in fiziki boyutu ve hafızaya yüklenen boyutunu bulma. Ümidimi kaybetmedim. Bol bol deniyorum. Yardım eden altın bulsun

  6. #6

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    Merhaba,
    şöyle bişi var
    <script>alert(document.fileSize)</script>
    belki bundan yola çıkılarak bir sonuca ulaşılabilir veya çıkmaz sokaga girilebilinir

  7. #7

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    http://www.myblogroll.com/Articles/progressbar/ böyle birşeyde var belki yardımcı olur.

  8. #8
    Üye ssonmez's Avatar
    Katılım Tarihi
    21.03.2003
    Yer
    Şehr-i İstanbul - Kıtaların Busesi
    Yaş
    37
    Mesaj
    1,380

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    @biolight, tam bir çıkmaz sokak çıktı hakikaten MSDN de boğuldum ama yok.

    @mukus çok güzel bir örnek bulmuşsun . Ufuk açıyor.
    Ama bu da kandırmaca maalesef, ASP + flash la kullanışsız bir şekilde yapılmış ve
    Kodları incelediğimizde, adamın gelen sayfayı bufferlayıp, belirlediği zaman aralıklarında ekrana bastığını , en son kalan parçayı da en son bastığını görüyoruz.

    Bence doğru bir çözüm değil bu. Diyelim 5 sn. verdim sayfa yüklemeye döngü içinde ve yüklendi yazdı son parça beni 10 sn bekletti ne olacak o zaman ?

    Yüzde %100 'ü 5 sn de kalanı 10 sn de yüklenen sayfa ...

    Ümidim bitmedi. Harika bir meydan okuma bence bu. Yaparsak bir ilke imza atacağız.

  9. #9

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    ssonmez'e, sanki hemen çözülebilecek bir sorunmuş gibi danıştığım bu hadise meğerse; o kadar da kolay bir şey değilmiş. kendisi için de işe yarayacağını söylese de biraz da benim ısrarımla, sağolsun olayı sahiplenip peşine düştü ssonmez..

    umarım, çözeriz : )


    kolay gelsin,

  10. #10
    Üye ssonmez's Avatar
    Katılım Tarihi
    21.03.2003
    Yer
    Şehr-i İstanbul - Kıtaların Busesi
    Yaş
    37
    Mesaj
    1,380

    Re: Yüzde kaçı yüklenen HTML sayfa ?

    Maalesef yalvar yakar , ara tara , www.gmail.com bile çözememiş kardeşim
    Loading... diyor sonra hide ediyor divi aynı mantık. Kodu kolay eklensin diye toparladım.
    İçimde ukte kalarak işin ucunu bıraktım şimdilik.

    yukleniyor.js

    Kod:
    var a="<div id='yukleniyorlayer' style='position:absolute; width:100%; height:100%; z-index:100; background-color: #FFFFFF; layer-background-color: #FFFFFF; border: 1px none #000000; visibility: visible'><b> <font face='Verdana, Arial, Helvetica, sans-serif' size='3' color='#FF0000'>SAYFA YÜKLENİYOR ...</font></b></div>"
    document.write(a);
    function yukle() {  
      document.getElementById("yukleniyorlayer").style.display='none';
      document.getElementById("sayfam").style.display="";
    }
    Sayfanız ise örneğin ;

    Kod:
    <HTML>
    <head>
    <title>Loading HTML</title>
    <META http-equiv=Content-Type content="text/HTML; charset=windows-1254">
    <script type="text/JavaScript" src="yukleniyor.js"> </script>
    </head>
    
    <body onload="yukle();">
      <table id="sayfam" style="display: none" width="50" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td>sayfanın asıl table ı içerik   ...</td>
      </tr>
    </table>
    </body>
    </HTML>
    Mesaj ssonmez tarafından 19.06.2004 (17:26) yeniden düzenlendi.

+ Yanıtla

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz