Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Посмотрите на веб окна (https://javascript.ru/forum/project/7250-posmotrite-na-veb-okna.html)

limonad 23.01.2010 10:04

Цитата:

Сообщение от B~Vladi (Сообщение 41619)
Всё собрал: и Apple и Windows. Своих идей нет?

Да и Gnome и KDE тоже можно собрать. На то уже есть некоторая возможность создавать свои темы (правда хотелось бы сделать потом ее еще гибче).

Riim 23.01.2010 10:30

Цитата:

Сообщение от limonad
Интересно, что подразумевается под словом тормозит

загрузка, либо выскакивает сразу (шанс ~10%), либо можно ждать вечно. Окно явно не успевает за мышью даже в Chrome.

PeaceCoder 23.01.2010 13:37

Цитата:

Сообщение от limonad
Без говна в комментах воспитание не позволяет обойтись? Или это жизненная потребность кого-то обосрать?

И в правду оочень тугой движок окон. сколько элементов в нем потрачено что бы его построить?

limonad 01.02.2010 00:44

Оказалось, что в IE6 тормоза были по причине использования expression в CSS для поддержки PNG прозрачности. Вынес эту функцию из expression прямо на страницу, стало значительно быстрее в IE6. Окна теперь и влево могут уходить (это математика). Логика drag&drop реализована, в принципе, по классической схеме, во многих местах встречающихся в примерах на этом сайте (я проcмотрел их уже много, суть одна, по onmousedown запоминаем элемент дальше действуем). Я открывал сайт в IE6 на довольно слабой машине 700MHz 128Мб Озу, для которого сам ИКСПИ тяжеловат, и при этом вообще-то тормозов не заметил. Вопрос "сколько элементов в нем потрачено что бы его построить?" я, честно говоря, недопонимаю. Может речь идет о элементах окна? Да их конечно больше, чем в примерах с простыми див и одной двумя кнопками, и без IFRAME, и с возможностью делать ресайз только за нижний правый угол. Рендеринг на таких простых окнах возможно работал бы быстрее. К тому же, все равно, на всех этих примерах тоже присутствует эффект догонялок за мышью.

PeaceCoder 01.02.2010 14:53

это окд окна
<div align="center" id="Desktop1_W_Win0" style="border: 0px solid rgb(255, 0, 0); overflow: visible; z-index: 602; position: absolute; left: 455px; top: 94px; width: 800px; height: 576px; visibility: visible;" class="shadow">
  <table cellspacing="0" cellpadding="0" border="0" style="height: 100%; width: 100%;"><tbody style="width: 100%;">
    <tr>
      <td style="width: 100%; height: 2px;" colspan="3">
        <table cellspacing="0" cellpadding="0" border="0" style="border: 0px none ; width: 100%; height: 100%;">
          <tbody>
            <tr>
              <td style="width: 8px;">
                <img width="8" vspace="0" hspace="0" height="2" border="0" src="http://rss2banner.com/desktop/imgv/t11.gif" style="display: block; cursor: nw-resize;" id="Desktop1_W_Win0_borderLT1">
              </td>
              <td width="100%" style="background-color: rgb(153, 153, 153);">
                <img vspace="0" hspace="0" height="2" border="0" src="http://rss2banner.com/desktop/imgv/t1.jpg" style="width: 100%; display: block; cursor: n-resize;" id="Desktop1_W_Win0_borderT1">
               </td>
               <td width="8">
                 <img width="8" vspace="0" hspace="0" height="2" border="0" src="http://rss2banner.com/desktop/imgv/t21.gif" style="display: block; cursor: ne-resize;" id="Desktop1_W_Win0_borderRT1">
               </td>
             </tr>
           </tbody>
         </table>
       </td>
     </tr>
     <tr>
       <td colspan="3" style="height: 28px;">
         <table cellspacing="0" cellpadding="0" border="0" style="border: 0px none ; width: 100%; height: 28px;">
           <tbody>
             <tr>
               <td>
                 <img width="8" vspace="0" hspace="0" height="28" border="0" src="http://rss2banner.com/desktop/imgv/t12.gif" style="display: block; cursor: nw-resize;" id="Desktop1_W_Win0_borderLT2">
               </td>
               <td style="width: 100%; height: 28px; background-image: url(http://rss2banner.com/desktop/imgv/ahead.jpg); background-color: rgb(204, 204, 204);" id="Desktop1_W_Win0_cellhead">
                 <div style="position: relative; left: 0px; top: 1px; width: 100%; height: 100%; cursor: pointer;" id="Desktop1_W_Win0_header">
                   <table cellspacing="0" cellpadding="0" border="0" style="width: 100%; height: 100%;">
                     <tbody>
                       <tr>
                         <td width="16">
                           <div style="position: relative; left: 0px; top: 0px; width: 20px; height: 20px;">
                             <img width="16" vspace="0" hspace="0" height="16" border="0" src="http://rss2banner.com/desktop/imgv/logos.gif" style="display: block; cursor: pointer;">
                           </div>
                         </td>
                         <td width="100%"> <!-- [B]Это только начало заголовка[/B] -->
                           <div style="overflow: hidden; position: relative; left: 0px; top: 0px; width: 100%; height: 20px; font-weight: bold; text-align: left;">Получите свои "Веб Окна"!</div>
                         </td>
                         <td nowrap="" style="vertical-align: top;">
                           <div style="position: relative; left: 0px; top: 0px; width: 100%;">
                             <img vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/min.gif" class="btn_min" title="Minimize" style="cursor: pointer;" id="Desktop1_W_Win0_btnMin">
                             <img vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/max.gif" class="btn_max" title="Maximize" style="cursor: pointer;" id="Desktop1_W_Win0_btnMax">
                             <img vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/close.gif" class="btn_close" title="Close" style="cursor: pointer;">
                           </div>
                         </td>
                       </tr>
                     </tbody>
                   </table>
                 </div>
               </td>
               <td>
                 <img width="8" vspace="0" hspace="0" height="28" border="0" src="http://rss2banner.com/desktop/imgv/t22.gif" style="display: block; cursor: ne-resize;" id="Desktop1_W_Win0_borderRT2">
                </td>
              </tr>
            </tbody>
          </table>
        </td>
      </tr>
      <tr>
        <td id="Desktop1_W_Win0_contentcellL" style="height: 100%; width: 4px; background-color: rgb(153, 153, 153);">
          <img width="4" vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/t13.gif" style="height: 100%; cursor: w-resize;" id="Desktop1_W_Win0_borderL1">
        </td>
        <td style="height: 100%; width: 100%; background-color: rgb(204, 204, 204);" class="windowcell" id="Desktop1_W_Win0_contentcell"> <!-- [B]тут контент как я понял[/B] -->
           <iframe frameborder="0" style="height: 100%; width: 100%; background-color: rgb(255, 255, 255); visibility: visible;" src="http://webokno.blogspot.com/2009/12/proposal.html" marginwidth="0" marginheight="0" id="Desktop1_W_Win0_content">
           </iframe>
         </td>
         <td id="Desktop1_W_Win0_contentcellR" style="height: 100%; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/t23.gif" style="height: 100%; cursor: w-resize;" id="Desktop1_W_Win0_borderR1">
         </td>
       </tr>
       <tr>
         <td style="height: 3px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" height="3" border="0" src="http://rss2banner.com/desktop/imgv/t13.gif" style="display: block; cursor: w-resize;" id="Desktop1_W_Win0_borderL2">
         </td>
         <td style="height: 3px; width: 100%; background-color: rgb(204, 204, 204); background-image: url(http://rss2banner.com/desktop/imgv/t33.gif);">
         </td>
         <td style="height: 3px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" height="3" border="0" src="http://rss2banner.com/desktop/imgv/t23.gif" style="display: block; cursor: w-resize;" id="Desktop1_W_Win0_borderR2">
         </td>
       </tr>
       <tr>
         <td style="height: 24px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/t13.gif" style="height: 100%; display: block; cursor: w-resize;" id="Desktop1_W_Win0_borderL3">
         </td>
         <td style="height: 24px; width: 100%; background-color: rgb(204, 204, 204);">
           <table cellspacing="0" cellpadding="0" border="0" style="border: 1px solid rgb(51, 51, 51); width: 100%; background-image: url(http://rss2banner.com/desktop/imgv/foot.jpg);" id="Desktop1_W_Win0_tf">
             <tbody>
               <tr>
                 <td style="width: 100%; height: 20px;"> <!-- [B]cтатусная строка[/B] -->
                   <div style="overflow: hidden; position: relative; left: 0px; top: 1px; width: 100%; height: 20px; text-align: left;">&nbsp;Получите свои "Веб Окна"!</div>
                 </td>
                 <td nowrap="" align="right"></td>
                 <td>
                   <img vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/ang.jpg" style="display: block; cursor: nw-resize;" id="Desktop1_W_Win0_borderRB2">
                 </td>
               </tr>
             </tbody>
           </table>
         </td>
         <td style="height: 24px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" border="0" src="http://rss2banner.com/desktop/imgv/t23.gif" style="height: 100%; display: block; cursor: w-resize;" id="Desktop1_W_Win0_borderR3">
         </td>
       </tr>
       <tr>
         <td style="height: 4px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" height="4" border="0" src="http://rss2banner.com/desktop/imgv/t15.gif" style="display: block; cursor: ne-resize;" id="Desktop1_W_Win0_borderLB1">
         </td>
         <td style="height: 4px; width: 100%; background-color: rgb(153, 153, 153);">
           <img vspace="0" hspace="0" height="4" border="0" src="http://rss2banner.com/desktop/imgv/t14.gif" style="width: 100%; display: block; cursor: n-resize;" id="Desktop1_W_Win0_borderB1">
         </td>
         <td style="height: 4px; width: 4px; background-color: rgb(153, 153, 153);">
           <img width="4" vspace="0" hspace="0" height="4" border="0" src="http://rss2banner.com/desktop/imgv/t16.gif" style="display: block; cursor: nw-resize;" id="Desktop1_W_Win0_borderRB1">
          </td>
        </tr>
      </tbody>
    </table>
</div>

Вы прикалываетесь? Конечно будет туго... Вам срочно нужен верстальщик.

П.С. А вам от этого не страшно?

Niar 01.02.2010 15:03

многа букоф:blink:

PeaceCoder 01.02.2010 15:10

Цитата:

Сообщение от Niar
многа букоф

отформатировал код. теперь разборчиво видно что в коде более 50ти элементов...

B~Vladi 01.02.2010 15:29

Цитата:

Сообщение от PeaceCoder
отформатировал код. теперь разборчиво видно что в коде более 50ти элементов...

Тут скорей не количество влияет, а сами элементы: рендеринг таблицы намного медленнее.

limonad 01.02.2010 17:17

Цитата:

Сообщение от PeaceCoder (Сообщение 43086)
отформатировал код. теперь разборчиво видно что в коде более 50ти элементов...

посмотрите точно также в FireBuge на код иконки
<div align="center" id="Desktop1_I_Icon0" style="z-index: 210; position: absolute; left: 10px; top: 50px; width: 70px; height: 70px; text-align: center;" class="IconCSS">
 <img hspace="0" height="48" width="48" vspace="0" border="0" src="http://rss2banner.com/desktop/img/kwrite.png" title="Блог" style="cursor: pointer;">
 <br>
 <a href="javascript:CreateWindow(Desk,800,DeskH(450),'Блог','http://webokno.blogspot.com/',0);" target="_self" title="Блог" style="color: rgb(255, 255, 255); font-family: arial,helvetica,sans-serif; font-size: 10pt; font-weight: normal; text-decoration: none;">Блог</a>
</div>


Тут тоже много так называемых элементов ? (внутри div-a одна картинка и одна ссылка) .
Тем не меннее эффект догонялок присутствует. закройте все окна (они удаляются их DOMa) и попробуйте потаскать иконки.
Поэтому на дивах может и быстрее было бы, но это отнюдь не факт. К тому же, такую верстку на див тоже сложновато написать.
cколько там должно быть элементов. По таблицам отчего мне должно быть страшно? их верстка формируются автоматически. Вы можете дать ссылку на информацию, что таблицы рендерятся значительно медленнее?

Kolyaj 01.02.2010 17:27

Цитата:

Сообщение от limonad
Тут тоже много так называемых элементов ? (внутри div-a одна картинка и одна ссылка) .

И br. С учётом того, что в разумном случае достаточно двух элементов, а в маньячном можно обойтись одним, да, много.


Часовой пояс GMT +3, время: 10:39.