Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха информатор 3.1
Еще более удобное оповещение о флуде!

Краснодарское время: 25 Май, 2012, 03:21:58

Страниц: [1]
Печать
Автор Тема: mouseover, blur или что-то в этом роде  (Прочитано 134 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
TRIAL    ↓ 
23 Август, 2011, 12:31:44
НЕ ХУЕТА! ХУЕТА!

Группа: Джедаи

Карма: 7
Сообщений: 907
Сила слова: 0.77

Что-то никак не соображу, как сделать следующую вещь.
Хочу чтобы как в Контакте, при клике на поле открывалось поле для ввода текста и кнопка отправить, а при клике в любую область сайта эта форма закрывалась и переходила в начальное состояние. В общем как поле для комментов на стене.
Собственно единственное. что я никак не соображу, как сделать чтоб поле в начальное состояние возвращалось. Можно через mouseover дива, в котором всё это дело находится, но мне это не нравиться. Как я понимаю, при клике в любую область должно определяться не нахожусб ли я в том поле для комментов, и если нет то закрывать его. Но как это сделать я хз :)
Надеюсь понятно написал что мне нужно )))
Выручайте :)
Записан

from TRIAL with LOVE
Frozzeg    ↓ 
23 Август, 2011, 12:50:31 , спустя 18 минут 47 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Пятросянище

Карма: 92
Сообщений: 5500
Сила слова: 1.67

открывай слой невидимый, на котором будет лежать форма, по клике на этом слое - закрываешь и слой и форму
Записан
TRIAL    ↓ 
23 Август, 2011, 01:01:37 , спустя 11 минут 6 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Джедаи

Карма: 7
Сообщений: 907
Сила слова: 0.77

Как вариант, но мне чет не нравиться :) Щас пытаюсь как-нибудь через parent или closest сделать но не до конца понимаю как они работают.
В итоге получается, что надо определить, является ли тот объект, на который я кликнул, дочерним моей формы или нет, и если нет соответственно убираем форму.
Может кто подскажет как такое организовать? 6) Как проверить является ли объект дочерним или нет? :)
Записан

from TRIAL with LOVE
TRIAL    ↓ 
23 Август, 2011, 01:50:34 , спустя 48 минут 57 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Джедаи

Карма: 7
Сообщений: 907
Сила слова: 0.77

Сделал вроде :)
Если кому интересно выглядит это следующим образом:
HTML
HTML
<div id='user_board_div'>
    <textarea name='user_board' class='user_wall_textarea'>Оставьте свое сообщение...</textarea><br>
    <p><input type='submit' name='send' value=' Написать на стене '></p>
    <input type='hidden' name='action' value='user_board'>
    <input type='hidden' name='to' value='$user_id'>
</div>
jQuery
Javascript
// Показать форму ответа
$(function() {
    $(".user_wall_textarea")
        .focus(function() {
       
            $(this).val('');
            $(this).removeAttr("class");
            $(this).addClass("user_wall_textarea_a");
           
            $("#user_board_div p").show();
           
        });
});
 
$(document)
    .bind("click", function (e) {
       
        if($(e.target).closest("#user_board_div").attr("id") != "user_board_div") {
           
            $("#user_board_div textarea").val('Оставьте свое сообщение...');
            $("#user_board_div textarea").removeAttr("class");
            $("#user_board_div textarea").addClass("user_wall_textarea");
           
            $("#user_board_div p").hide();
        }
});
CSS
CSS
.user_wall_textarea {   width: 475px;
                height: 24px;
                padding: 4px;
                font-size: 12px;
                font-style: italic;
                color: #999;
                margin-bottom: 10px; }
.user_wall_textarea_a {  width: 475px;
                height: 66px;
                padding: 4px;
                font-size: 12px;
                margin-bottom: 10px; }
#user_board_div p {  text-align: right;
                display: none; }
Записан

from TRIAL with LOVE
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd