23 мар 2013
Делаем диалоги как вконтакте (Урок 01)
SibWeb Категория: Web-Мастеру » Скрипты
У нас вы можете скачать бесплатно Делаем диалоги как вконтакте (Урок 01)

Данный материал предоставлен сайтом Skripter.info исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Делаем диалоги как вконтакте (Урок 01)


Добрый день! сегодня мы с вами разработаем тело диалогов. а это где будут отображатся все юзеры (кто онлайн).
И так создадим папку dialogvk и в этой папке создадим файлы: style.css, index.html, и папка images.
Зайдём в index.html и поместим вот такой код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

<title>Диалоги (в)контакте от "Вадима Кондакова"</title>

</head>

<body>

</body>
</html>

Сохраняем, и после
<title>Диалоги (в)контакте от "Вадима Кондакова"</title>

вставляем:
<link rel="stylesheet" href="style.css" type="text/css"/>

Сохраним, и между тегами:
<body>

</body>

вставим:
<script type='text/javascript'>
  /* Определяем тип браузера */
  var ie = 0;
  var op = 0;
  var ff = 0;
  var browser = navigator.userAgent;
  if (browser.indexOf("Opera") != -1) op = 1;
  else {
    if (browser.indexOf("MSIE") != -1) ie = 1;
    else {
      if (browser.indexOf("Firefox") != -1) ff = 1;
    }
  }
  var block = document.getElementById("block");
  delta_x = 0;
  delta_y = 0;
  /* Ставим обработчики событий на нажатие и отпускание клавиши мыши */
  block.onmousedown = saveXY;
  if (op || ff) {
    block.addEventListener("onmousedown", saveXY, false);
  }
  document.onmouseup = clearXY;
  /* При нажатии кнопки мыши попадаем в эту функцию */
  function saveXY(obj_event) {
    /* Получаем текущие координаты курсора */
    if (obj_event) {
      x = obj_event.pageX;
      y = obj_event.pageY;
    }
    else {
      x = window.event.clientX;
      y = window.event.clientY;
      if (ie) {
        y -= 2;
        x -= 2;
      }
    }
    /* Узнаём текущие координаты блока */
    x_block = block.offsetLeft;
    y_block = block.offsetTop;
    /* Узнаём смещение */
    delta_x = x_block - x;
    delta_y = y_block - y;
    /* При движении курсора устанавливаем вызов функции moveWindow */
    document.onmousemove = moveBlock;
    if (op || ff)
      document.addEventListener("onmousemove", moveBlock, false);
  }
  function clearXY() {
    document.onmousemove = null; // При отпускании мыши убираем обработку события движения мыши
  }
  function moveBlock(obj_event) {
    /* Получаем новые координаты курсора мыши */
    if (obj_event) {
      x = obj_event.pageX;
      y = obj_event.pageY;
    }
    else {
      x = window.event.clientX;
      y = window.event.clientY;
      if (ie) {
        y -= 2;
        x -= 2;
      }
    }
    /* Вычисляем новые координаты блока */
    new_x = delta_x + x;
    new_y = delta_y + y;
    block.style.top = new_y + "px";
    block.style.left = new_x + "px";
  }
</script>

теперь откроем файл style.css и вставим вот это:

html { height:100%; }

body {
    background: repeat center top #1F3147;
    height: 100%;
    margin:0px;
    padding:0px;    
    word-wrap: break-word;
    font-family: tahoma;
    font-size:11px;
    overflow-x:hidden
}

сохраним. и откроем наш index.html и посмотрим перед собой тёмно-синий фон).
и так теперь в style.css вставим:
.block {
cursor: move;
position: fixed;
z-index: 9999999;
}
.im_title_online {
font-size: 1.09em;
cursor: pointer;
font-weight: bold;
text-shadow: 0px 1px 0px #262626;
color: white;
}
.im_close {
display: block;
background: black;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
-moz-box-shadow: 0 0 2px #111;
-webkit-box-shadow: 0 0 2px #111;
box-shadow: 0 0 2px #111;
padding: 3px;
margin: 0 0 0 4px;
visibility: hidden;
opacity: 0.6;
filter: alpha(opacity=60);
visibility: visible;
cursor: pointer;
}
.im_header {
background: white;
background:rgba(0, 0, 0, 0.75);
width:220px;
height: 388px;
padding: 5px 10px 5px 10px;
border-radius: 3px 3px 3px 3px;
}
.im_content {
background: white;
box-shadow: inset 0 0 3px #777;
height: 307px;
border-radius: 3px 3px 3px 3px;
padding: 5px 8px 5px 8px;
cursor: default;
overflow:auto
}
.ims_content img {
border-radius: 2px;
float:left;
margin-right:3px;
width:30px
}
.ims_content a {
color: #2B587A;
text-decoration: none;
padding: 0 0 0 8px;
cursor: pointer;
line-height: 2.72em;
white-space: nowrap;
display: block;
width: 130px;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
padding: 5px 2px 5px 2px;
}
.ims_content a:hover {
background: none repeat scroll 0 0 rgba(219, 227, 235, 0.5);
width:200px;
padding: 5px 2px 5px 2px;
border-radius: 3px 3px 3px 3px;
}

сохраняем и в index.html поместим:
после:
<body>

добавляем:
<div id="block" class="block">
<div class="im_header">
<div class="im_title_online">
8 друзей онлайн
<div class="im_close" style="float:right;"><img src="./images/close.png"></div>
<p>
<input type="text" style="color: rgb(119, 119, 119);border:0px;width: 200px;" placeholder="Начните вводить имя...">
</div>
<div class="im_content">
<div class="ims_content">
<a><img src="https://cs307513.vk.me/v307513253/987a/_uUnuva59Co.jpg" />
Кирилл Филинков
</a>
<a><img src="https://cs403017.vk.me/v403017405/449e/SzTfQ-vU8Gw.jpg" />
Денис Телешев
</a>
<a><img src="https://cs406523.vk.me/v406523776/7b12/DR2mk_m0PmA.jpg" />
Евгений Одинцов
</a>

</div>
</div>
</div>
</div>

сохраняем. и смотрим результат
и у нас получилось вот такое чудо:
Делаем диалоги как вконтакте (Урок 01)

И теперь добавим в style.css:
input[type=checkbox] {
  margin: 5px;
}

input,
textarea {
  background: white;
  border: 1px solid #AAA;
  box-shadow: 0px 1px 0px white;
  -webkit-box-shadow: 0px 1px 0px white;
  -moz-box-shadow: 0px 1px 0px white;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  font-family: inherit;
  font-size: 11px;
  line-height: 26px;
  color: #555555;
  font-size: 11px;
  padding: 0px 10px;
  height: 28px;
  position: relative;
  display: block;
  outline: none;
  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
  -o-transition: border linear 0.2s, box-shadow linear 0.2s;
  -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
  transition: border linear 0.2s, box-shadow linear 0.2s;
}
input.hidden,
textarea.hidden {
  display: none;
}
input:focus,
textarea:focus {
  border-color: rgba(34, 121, 204, 0.8) !important;
  outline: 0;
  outline: thin dotted \9;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px rgba(34, 121, 204, 0.5);
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px rgba(34, 121, 204, 0.5);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px rgba(34, 121, 204, 0.5);
}

input[type=checkbox] {
  border: none;
  padding: 0px;
}

textarea {
  height: 100px;
  padding: 10px;
  line-height: 18px;
  font-size: 12px;
  resize: vertical;
  box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1);
}

Сохраним и смотрим результат. ну на этом у меня всё. а на следущем уроке мы научим открывать окна диалогов и закрывать форму диалога.

Исходник работы можно скачать на Яндекс.Диске)
Если есть вопросы задавайте отвечу
PS: В исходнике данного урока имеются все картинки.

Сказать спасибо вы можете через:



Скачать





Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
wolf777 | 23 марта 2013 14:16
  • Группа: Посетители |
  • Комментарий: 21 (ссылка)

ахахахахах 35

SibWeb | 23 марта 2013 14:20
  • Группа: Посетители |
  • Комментарий: 22 (ссылка)

smotrikov,
короче парень оффнись я тебе сказал всё что есть.

RedCat | 23 марта 2013 14:24
  • Группа: Посетители |
  • Комментарий: 23 (ссылка)

может успокоитесь уже?)

а аватарка моя)
Цитата: smotrikov
ага , да ,конечно..
cs307513(.)vk(.)me/v307513253/987a/_uUnuva59Co.jpg

wolf777 | 23 марта 2013 14:25
  • Группа: Посетители |
  • Комментарий: 24 (ссылка)

SibWeb юнный хацкер напиши простенький скрипт icq магаза с оплатой за баллы) и аргументируй его) тогда мы скажем тебе что ты прав)

SibWeb | 23 марта 2013 14:26
  • Группа: Посетители |
  • Комментарий: 25 (ссылка)

wolf777,
я же сказал что я доказывать нечего не собираюсь.

smotrikov | 23 марта 2013 14:28
  • Группа: Посетители |
  • Комментарий: 26 (ссылка)

SibWeb,тогда к тебе и останется такое отношение , и дальше буду гнобить

SibWeb | 23 марта 2013 14:30
  • Группа: Посетители |
  • Комментарий: 27 (ссылка)

smotrikov,
мне помат. ты же олень

smotrikov | 23 марта 2013 14:31
  • Группа: Посетители |
  • Комментарий: 28 (ссылка)

SibWeb,я хоть что-то умею , и благодаря этим умениям свой бизнес)
а ты и дальше занимайся чепухой .

tonik | 23 марта 2013 19:16
  • Группа: Посетители |
  • Комментарий: 29 (ссылка)

SibWeb,
Изначально Вам не нужно было вступать в диалог...
Данные тела, только этим и тешатся...

smotrikov,
благодаря этим умениям свой бизнес


Очень сильно сомневаюсь в этом...
Ну... если только... (:

Life^ | 23 марта 2013 23:48
  • Группа: Посетители |
  • Комментарий: 30 (ссылка)

smotrikov, был бы у вас свой бизнес, вы на данном сайте не обитали, поэтому хватит нести чушь.

SibWeb, урок хороший, была бы соц. сеть, забрал бы.

smotrikov | 24 марта 2013 11:12
  • Группа: Посетители |
  • Комментарий: 31 (ссылка)

Life^,оу , и откуда такие выводы то?

>> <<
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.