Dolphin»Блоги


День Рождения Ноябрь 11, 1985

Индикатор выполнения AJAX запроса (jQuery)

Как говорится "Краткость - сестра таланта", я конечно не брат краткости и вообще, ее родственником не являюсь, но буду краток! Сразу к делу.

Допустим, у нас есть код обработки формы (форма #form), в которую вводим, какие то данные, жмем кнопку и через ajax выводим результат на экран (блок #display):
    $.ajax({ 
        url: 'ajax.php',
        type: 'POST',
        data: $('#form').serialize(),  
        success: function(data) {
            $('#display').html(data);        
        }
    });

Стоит задача - имитировать процесс выполнения обработки данных. В качестве индикатора можно использовать картинку анимацию (формат .gif). Анимированная картинка должна появится сразу после нажатия кнопки и исчезнуть перед тем, как будет выведен результат.

Приступаем, создаем класс, задаем размеры картинки и прописываем полный путь до нее:
.processing {
    width: 25px;
    height: 10px;
    background: url("loading.gif");
}

Теперь в ajax запрос добавляем две функции: addClass() и remove...

Анимированное появление и исчезновение HTML элементов на JavaScript | jQuery

Для появлении и исчезновении элементов, будем использовать библиотеку jQuery (Как подключить библиотеку jQuery).

И без лишних слов, сразу к делу. Я написал вот такой код:
<button id="button">Показать</button>
<div style="display: none;">Скрытый текст</div>
<script>
$('#button').click(function() {
    $('div').show(1000);

    setTimeout(function() {
        $('div').hide(1000);
    }, 2000);
}); 
</script>

Данный код, после нажатия кнопки "Показать" разворачивает в течении одной секунды строчку "Скрытый текст", и ровно через две секунды (с момента нажатия кнопки) сворачивает текст обратно. Сворачивается строчка, так же одну секунду. Из-за того, что на появление и исчезновение заданно время, появление текста стало анимированным.

Постараюсь подробно объяснить, что происходит в нашем примере, так сказать, разберу код по отдельности. Первые две строчки:
<button id="button">Показать</button>
<div style="display: none;">Скрытый текст</div>

Это кнопка, с идентификатором button, после...

Как установить задержку выполнения функции на JS

Недавно задавали вопрос, как придержать выполнение функции на определенное время, используя JavaScript, как это сделать, расскажу в этой теме. Для этого будем использовать функцию setTimeout, данная функция однократно выполняет помещенный в нее код по истечению заданного времени (в миллисекундах). Пример работы:
setTimeout(function() {
    alert('Привет Мир!');
}, 2000);

Код из примера выведет сообщение "Привет Мир!" по истечении двух секунд (2000). Кстати, это же код можно написать так:
function hi() {
    alert('Привет Мир!');
};

setTimeout(hi, 2000);

Или так:
function hi() {
    setTimeout(function() {
        alert('Привет Мир!');
    }, 2000);
};

hi();

Как я уже сказал функция setTimeout выполнит код один раз после загрузки страницы или, какого то условия, в зависимости от поставленной задачи. Если необходимо выполнять код постоянно, через определенное время, то для решения этого вопроса подходит функция setInterval, эта функция выполняет код постоянно, с заданным...

Удалить пробелы в начале и в конце строки на jQuery

Порой появляется необходимость удалить пробелы в начале и в конце строки, например, когда надо проверить поле формы на пустоту. Удаляются пробелы при помощи функции trim, предназначение этой функции, как раз для удаления пустого место с начала и конца строки. Делается это так:
row = $.trim(row);

Чтобы убедиться, что функция действительно работает, могу предложить попробовать выполнить код ниже:
var row = ' Библиотека jQuery      ';
alert('\'' + row + '\'');
row = $.trim(row);
alert('\'' + row + '\'');

Тут мы создаем переменную с пробелами в начале и в конце фразы "Библиотека jQuery". Функция alert, строчкой ниже, выведет окошко с сообщением:
' Библиотека jQuery '

Видно, что между фразой и кавычками имеются пробелы.
Дальше по коду, функция trim удаляет пробелы и отдает новое значение той же переменной.
Кстати писать функцию необходимо со знаком доллара, либо со словом jQuery (так: $.trim или так: jQuery.trim), в противном случаи, функция работать не будет и скрипт будет...

Массивы (JavaScript: Array)

Массив - это одна из разновидность объекта, чье предназначение - хранить различные значения.

Пустой массив:
var a = [];

Или:
var a = new Array();

Массив с четырьмя значениями:
var family = [
    'Алексей',
    'Виктория',
    'Юлия',
    'Никита'
]; 

Или:
var family = new Array(
    'Алексей',
    'Виктория',
    'Юлия',
    'Никита'
);

"Вытащить" значение из массива можно так family[0] (первое значение (Алексей)), family[1] (второе значение (Виктория)) и так далее.
Пример:
var family = [
    'Алексей',
    'Виктория',
    'Юлия',
    'Никита'
];
alert(family[1]);

На экране появится окошко с именем "Виктория"....