Выдержит ли рядовой браузер такой скрипт?

Тема в разделе "WASM.HEAP", создана пользователем osrootd, 7 апр 2009.

  1. osrootd

    osrootd New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2008
    Сообщения:
    1.086
    Сделал лоадер для изображений.
    Алгоритм такой.

    1. посылаем запрос о количестве изображений в указанной папке
    2. крутим цикл
    3. в цикле принимаем изображения по одному:

    Код (Text):
    1. var loader = new Image ();
    2. loader.src="progress.gif";
    3.  
    4. var view = document.getElementById ("view");
    5. var LoadLabel = document.createElement ("label");
    6.  
    7. view.appendChild (LoadLabel);
    8. view.appendChild (loader);
    9.  
    10. function setStatus (st)
    11. {
    12. LoadLabel.innerHTML="<b>Загрузка: <font color='red'>"+st+"</font></b><br />";
    13. }
    14.  
    15. setStatus ("Список изображений...");
    16. var imagesA = new Array();
    17. var m = new Request({url:'vimgcat.php?id=<? echo $_GET["id"];?>&cmd=1', onSuccess:function(tt){
    18. setStatus ("Подсчет изображений в каталоге: "+tt);
    19.  
    20. do
    21. {
    22. tt--;
    23. var mx = new Request({url:'vimgcat.php?id=<? echo $_GET["id"];?>&cmd=2&cxx='+tt, onSuccess:function(ttx){
    24. setStatus (ttx);
    25. var ximg = new Image ();
    26. ximg.src=("<? echo $_GET["id"];?>/"+ttx);
    27. view.appendChild (ximg);
    28. }}).post()
    29.  
    30. }while (tt!=-1);
    31.  
    32.  
    33. }}).post();
    У меня на локалхосте все путём. А у других клиентов будет такое работать? Цикл-то тяжелый.
    И как бы его оптимизировать?
     
  2. bendme

    bendme New Member

    Публикаций:
    0
    Регистрация:
    10 мар 2009
    Сообщения:
    179
    Тут единственная проблема - это частое обращение к php скрипту. Напиши свой vimgcat.php так, чтобы при cmd=2 он тебе возвращал сразу все значения cxx (как-нибудь), а не конкретный cxx, зависящий от tt.
     
  3. osrootd

    osrootd New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2008
    Сообщения:
    1.086
    Да я думал вообще массив присылать. Но мысль почему-то отвалилась.