Показать сообщение отдельно

  #8  
Старый 10.06.2009, 02:57
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

Репутация: 389
По умолчанию

Цитата:
Сообщение от k.sergey  
не, само вложение приходит и в мейл.ру оно отображается, но вот допустим в яндексе оно просто ссылкой на саму картинку
Тоже юзает hidden поля, тока JS пропущен через шредер и малочитаемый без форматирования кода.

5 минут копания лопатой и ручного форматирования кода с поиском дали
JavaScript:
PHP код:
addFile:function(D)
{
  
y5.Dom.hide(D);
  var 
E,B,A;E=D.value;

  if(!
E)
  {
    return 
  }

  
B=D.nextSibling;
  
A=y5.Elements.createFromHTML('<a target="_blank" href="file://'+E+'">'+y5.Url.fileName(E)+"</a>");B.firstChild.appendChild(A);
  var 
C=document.getElementById("tmp_attachments");
  
C.appendChild(B.parentNode);
  
y5.Dom.show(B);

Код HTML:
<div id="tab_attachments">
<div class="attach-area">
<table class="attach-set">
<tr><td class="attach-set-upload">
<ul>
<div id="addfile" class="hidden">
<li>
<input type="file" class="wideFile" name="att" size="35">
<div class="hidden">
<div class="attach-field attach-done">
</div>
<a href="#" onclick="messAttachs.kill(this);; return false;" class="attach-delete ">Удалить</a>
</div>
</li>
</div>
<li>
<input type="file" class="wideFile" name="att" id="f1" size="35">
<div class="hidden">
Из кода видно, что яндекс тоже юзает скрытые поля, которые находятся в диве с id="tab_attachments" и управляет ими через гиперссылки.

И самая фишка в том. Когда постица вложенный контент, яндекс грузит пару секунд и ссылка контента имеет вид file://Fenix.png, когда файл загрузился, ссылка меняется на ссылку внутри сервера вида http://mail.yandex.ru/message_part/Fenix.png?hid=1.2&mid=706.170255908.97563913710249 245203954190876&name=Fenix.png

Вывод : на яндексе всё работает по аналогии с меил.ру, но только вложенный контент вначале нужно отгрузить, а потом отравлять письмо

Последний раз редактировалось FireFenix; 10.06.2009 в 03:08..
 
Ответить с цитированием