[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подскажите книгу по AJAX
bob marley
Доброго времени суток!
Подскажите хорошую книгу возможно по которой вы учились и которую можно найти в интернете(бесплатную).
Заранее спасибо! wink.gif



Спустя 2 минуты, 2 секунды (11.02.2012 - 22:43) nugle написал(а):
bob marley
Понимаешь в чем разность между технологией и языком. Книжки есть по ajax, но 90% там ненужного материала.
Я учился по этой статье
http://irbis-team.com/15/13
плюс мне помогал один человек с форума, так что если будут вопросы помогу.
А на jquery все гораздо проще
http://jquery.page2page.ru/index.php5/Ajax

Спустя 2 минуты, 55 секунд (11.02.2012 - 22:46) bob marley написал(а):
nugle
Я в AJAX вообще нуб! sad.gif
На ирбисе уже ничего не понял..
На втором ресурсе почитаю..Может,что пойму!

Спустя 1 минута, 17 секунд (11.02.2012 - 22:47) ApuktaChehov написал(а):
bob marley - книгу? Конкретно по Ajax? Ajax слишком простой, что бы книгу писать по нему.

Если вам нужно научиться работать с ajax, то ищите статьи по нему бесплатные или еще лучше платные.

Похоже вы и в JavaScript тоже нуб, а в этом случае без знания JS, учить аякс смысла особого нет.

Спустя 1 минута, 21 секунда (11.02.2012 - 22:48) sergeiss написал(а):
Цитата (nugle @ 11.02.2012 - 23:43)
Книжки есть по ajax, но 90% там ненужного материала.

Я бы сказал, что в больших книгах по аяксу 95% не нужного материала smile.gif Потому что основа аякса очень простая. А основное - это его использование, там надо знать DOM (структура HTML-документа) и JS, чтобы эффективно управлять изменением DOM.

Я изучал аякс по книге "К.Дари, Б.Бринзаре и др.- AJAX и PHP. разработка динамических приложений" - нашел в и-нете отсканированный вариант. И понял, что покупать отдельную книгу по аяксу не нужно.

Спустя 51 секунда (11.02.2012 - 22:49) nugle написал(а):
ApuktaChehov
ну я вообще скачивал книги по ajax, но больше пары страниц не выдержал
bob marley
ну задавай конкретные вопросы, что ты не понял?

Спустя 1 минута, 23 секунды (11.02.2012 - 22:51) ApuktaChehov написал(а):
А я с аяксом познакомился в какой-то статье, в гугле нашел, а дальше уже само пошло, теперь такие вещи делаю, многие могут только позавидовать.
Правда было это года 2 назад.

Спустя 55 секунд (11.02.2012 - 22:52) bob marley написал(а):
nugle
Да я сейчас видео уроки нашел,скачаю и норм все будет!
Если,что тебе напишу в личку,ок?

Спустя 6 секунд (11.02.2012 - 22:52) ApuktaChehov написал(а):
nugle - тогда вам нужно JS учить и именно с него и начинать.
Я надеюсь, что HTML, CSS ну и PHP вы знаете...

Спустя 2 минуты (11.02.2012 - 22:54) nugle написал(а):
Цитата
тогда вам нужно JS учить и именно с него и начинать.

ммм, я, конечно, не претендую на магистора js, но с чего ты взял, что у меня нехватка знаний? huh.gif
bob marley
да, без проблем, только завтра)

Спустя 50 секунд (11.02.2012 - 22:55) Bustle написал(а):
Любая. Там все довольно просто. Если знаешь все, что требуется для данной технологии, то все разбирается очень быстро и просто.

Спустя 5 минут, 11 секунд (11.02.2012 - 23:00) ApuktaChehov написал(а):
nugle - упс. Это я не тебе сказать хотел. Это я Бобу пытался сказать, но почему то рука дрогнула laugh.gif

Спустя 2 минуты, 52 секунды (11.02.2012 - 23:03) nugle написал(а):
ApuktaChehov
ахах biggrin.gif

Спустя 2 минуты, 16 секунд (11.02.2012 - 23:05) ApuktaChehov написал(а):
tongue.gif

Спустя 14 минут, 36 секунд (11.02.2012 - 23:19) Krevedko написал(а):
Цитата (nugle @ 11.02.2012 - 19:43)
bob marley
Понимаешь в чем разность между технологией и языком. Книжки есть по ajax, но 90% там ненужного материала.
Я учился по этой статье
http://irbis-team.com/15/13
плюс мне помогал один человек с форума, так что если будут вопросы помогу.
А на jquery все гораздо проще
http://jquery.page2page.ru/index.php5/Ajax

Ага..то, что там написано на джиквери делается тремя строчками )

Спустя 2 минуты, 9 секунд (11.02.2012 - 23:22) nugle написал(а):
Krevedko
Ну я поэтому и дал ссылку по реализации на jquery biggrin.gif biggrin.gif

Спустя 51 минута, 51 секунда (12.02.2012 - 00:13) inpost написал(а):
nugle
А на JS - 5ью smile.gif
Инициализация работы Ajax.
Инициализация переменных
Инициализация метода
Инициализация кал-бек функции
Вызов Ajax.

Спустя 2 часа, 12 минут, 57 секунд (12.02.2012 - 02:26) Krevedko написал(а):
Сравниваем

var req = Create();

function Create(){
if(navigator.appName == "Microsoft Internet Explorer"){
req = new ActiveXObject("Microsoft.XMLHTTP");
}else{
req = new XMLHttpRequest();
}
return req;
}
function Request(query)
{
req.open('post', 'http://www.mysite.com/ajax.php' , true );
req.onreadystatechange = Refresh;
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
req.send(query);
}
function Pusk()
{
var txt = encodeURIComponent(document.getElementById('txt').value);
var query = 'txt='+txt;
Request(query)
}
function Refresh()
{
var a = req.readyState;

if( a == 4 )
{
var b = req.responseText;
document.getElementById('ajax').innerHTML = b;
}
else
{
document.getElementById('ajax').innerHTML = '<img src="prel.gif" />';
}
}


и

$(document).ready(function(){
$("#send").click(function(){
$("#loader").show();
$.post("ajax.php", { 'txt':$("#myid").val() },
function(reply ) {
$("#loader").hide();
$("#ajax").html(reply);
});
});
});

Спустя 24 минуты, 2 секунды (12.02.2012 - 02:50) bodja написал(а):
Krevedko

Что сравниваем?

c onClick="Pusk();" biggrin.gif biggrin.gif biggrin.gif

Спустя 5 часов, 46 минут, 27 секунд (12.02.2012 - 08:37) Shkiper написал(а):
Bob можно ссылочку на видео которое ты нашел???(сам аякс начинаю учить)

Спустя 1 час, 36 минут, 11 секунд (12.02.2012 - 10:13) nugle написал(а):
inpost, bodja
Вначале создать объект XMLHttpRequest() под все браузеры, там уже больше получается) Потом и вставить во все места гораздо проще, нежели в js.

Спустя 3 часа, 1 минута, 50 секунд (12.02.2012 - 13:15) inpost написал(а):
Krevedko
Зачем ты пытаешься врать, к тому же обманываешь самого себя?

Функция "Пуск" не относится к Аяксу вообще никаким боком. Это ты получил данные для передачи, а в jQuery ты не использовал никаких функций для получения данных, а всё уже в строчку написал.

С таким же успехом эти данные ты мог прям внутри send(document.getElement...) - вот так записать.

Так что ты сфальсифицировал данные smile.gif
В защиту твоего кода скажу так, что у тебя ещё непонятно зачем стоит "onload" smile.gif То есть это 2 грязных кода, и сравнивать их невозможно, потому что они написаны абсолютно по-разному smile.gif

nugle
Ну запихни в ядро функцию создания объекта XML, там 6 строк, это куда быстрее будет, чем дёргать эту же функцию в ядре jQuery, которая практически один в один и выглядит smile.gif
Функция создания объекта XML есть как там в ядре jQuery, так и у тебя в ядре твоего сайта. Не важно где она, важно сам код вызова этой функции и написание кода smile.gif

Спустя 3 минуты, 1 секунда (12.02.2012 - 13:18) nugle написал(а):
inpost
не... не переубедил biggrin.gif Все равно, если я работаю с jquery, то какой смысл? На jquery результат во все места запихал и все, а это тут башню ломай с твоим Js. Не я, конечно, сделаю все как надо, но просто время гораздо больше уйдет нежели если я буду работать с jquery

Спустя 5 минут, 26 секунд (12.02.2012 - 13:23) inpost написал(а):
nugle
Да не вопрос, просто функции одинаковые, и всё выглядит одинаково, нет никакой разницы что использовать.
Другое дело в том, что программист должен уметь разбираться в языке программирования, а не во "временных библиотеках" smile.gif

Спустя 4 минуты, 3 секунды (12.02.2012 - 13:27) nugle написал(а):
inpost
ну это мы умеем biggrin.gif и не скромничаем даже)))

Спустя 13 минут, 36 секунд (12.02.2012 - 13:41) inpost написал(а):
Строчки:
1) Инициализировали XML объект. В jQuery это не надо делать.
Плюсом назвать нельзя, потому что без разницы, твоя или чужая библиотека, ты просто инициализовал XML объект. Подключаем либо в jQuery.js, либо в myscript.js , в зависимости от выбора реализации

2) Указали настройки:
open('post', 'http://www.mysite.com/ajax.php' , true ); 
.post("ajax.php",

Видим первый плюс у стандарта, возможно указать будет ли запрос асинхронным. Второй плюс: Ты можешь подставить переменную open(method,url), и таким образом передать метод, в jQuery придется писать условия if-else для .post, .get (Может есть и проще метод, помимо условий и eval, я не знаю)

3)
setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8"); 

Первый реальный плюс у jQuery, там кодировка указана зарание до нас.

4)
onreadystatechange = Refresh;
function(reply ) {

Тут мы видим всё одинаковое, и там и там мы указываем функцию call-back

5) send(null); - тут указываем POST данные, которые отправляются
у jQuery эти данные тут: { 'txt':$("#myid").val() } в виде объекта.

Ajax мы сравнили.
Два плюса у обычного метода против 1 плюса и 1 сомнительного плюса (за нас уже инициализировали объект, что можно было сделать в нашем ядре тоже).

В итоге НИКАКОЙ РАЗНИЦЫ, абсолютно никакой в написании кода. А производительность у прямого метода всегда будет выше.

Спустя 13 минут, 32 секунды (12.02.2012 - 13:55) nugle написал(а):
inpost
1) Работаем с ф-ей $.ajax, мне не нужны дополнительные настройки, поэтому обычно я работаю с $.get(). Ну так вернусь обратно к $.ajax()
$.ajax({

async: true, // Вот первый твой плюс, который был в сторону js уже загнулся
type: "GET", //Указали тип запроса (GET или POST). Вот второй загнулся
url: 'index.php', // URL
success: handleResponse

});

2) Итого: 1 плюс против 0 в пользу jquery

Спустя 6 минут, 23 секунды (12.02.2012 - 14:01) Krevedko написал(а):
inpost

Не тупи. Ты перегрелся похоже сегодня. Я переписал Колин код используя джиквери. Чтобы показать, что будет короче. Он делает аааабсолютно тоже самое, что и Колин. Пхп файлы у них идентичны.
Т.е. мы пишем какой-то текст, жмем отправить. Крутится картинка во время отправки ($("#loader").show()wink.gif, потом приходит ответ, то что мы передали выводится ( $("#ajax").html(reply)wink.gif и картинка прячется ($("#loader").hide()wink.gif.
Это конечно говнокод. Я просто скопировал свою старую статью для ирбиса, писанную год назад.
Красивее юзать .ajaxSend() и .ajaxSuccess()

Спустя 3 минуты, 44 секунды (12.02.2012 - 14:05) Krevedko написал(а):
Цитата (nugle @ 12.02.2012 - 10:55)
inpost
1) Работаем с ф-ей $.ajax, мне не нужны дополнительные настройки, поэтому обычно я работаю с $.get(). Ну так вернусь обратно к $.ajax()
$.ajax({

async: true, // Вот первый твой плюс, который был в сторону js уже загнулся
type: "GET", //Указали тип запроса (GET или POST). Вот второй загнулся
url: 'index.php', // URL
success: handleResponse

});

2) Итого: 1 плюс против 0 в пользу jquery

Угу. Я насчитал 24 настройки, которые можно использовать при работе с .ajax
Там и тип запроса (гет, пост) и синхронный/ асинхронный и кеширование, если надо и всякие там beforeSend/complete (что выполнять при отправке, в случае завершения) итд. на все случаи жизни короч )

Спустя 2 минуты, 16 секунд (12.02.2012 - 14:07) nugle написал(а):
Krevedko
Вот и я про тоже, но мне обычно эти настройки не нужны)
inpost'y показал примеры именно по его сравнениям
Все настройки можно посмотреть здесь
настройки для ф-ии $.ajax()

Спустя 3 минуты, 43 секунды (12.02.2012 - 14:11) Krevedko написал(а):
Цитата (bodja @ 11.02.2012 - 23:50)
Krevedko

Что сравниваем?

c onClick="Pusk();"  biggrin.gif  biggrin.gif  biggrin.gif

Цитата
Ага..то, что там написано на джиквери делается тремя строчками )

с этим сравниваем. т.е. полностью весь Колин код с моим. они делают одно и то же.

Цитата
Все настройки можно посмотреть здесь
настройки для ф-ии $.ajax()

Угу. У меня этот мануал в оффлайн версии на почетном месте рядом с маном по пхп лежит. На рабочем столе.

Спустя 4 минуты, 21 секунда (12.02.2012 - 14:15) inpost написал(а):
Разница в том, что количество строк в обычном подходе будет на 1 больше, из-за настройки кодировки, и всё.

Krevedko
А Колин код тут при чём? Мы вообще разбираем разницу Ajax vs jQuery-Ajax.
Как может быть абсолютным, если ты изменил функции и используешь лишние.

В одном добавил иконку, в другом - нет. Фальсификация. В одном выбрал параметры в отдельной функции, во втором - просто в строчку записал - фальсификация. Конечно, нубы то подумают, что ты прав, типо визуально короче, а я расписал, что по размерам всё одинаково.

Николай писал развёрнуто для того, чтобы обучить людей, а не всё скомкать и создать свою "кучу малу". В этом и разница. А ты попытался всё уплотнить показывая, что визуально он лучше, но мы то оба знаем, что они одинаковые.


Ах ну да, как же я могу признать, что оба варианта абсолютно одинаковых, я же не смогу таким образом носить корону "сам" smile.gif

Спустя 5 минут, 46 секунд (12.02.2012 - 14:21) inpost написал(а):
Какие-то глупые замеры, у кого длиннее "ОН".
Я выше расписал, что по коду одинаковое количество будет занимать, +-1 строчка. Зря, что отказываетесь это признать. smile.gif Я ведь уже и по полочкам выше расписал, и в выводах написал: "нет никакой разницы" smile.gif

Спустя 1 час, 18 минут, 57 секунд (12.02.2012 - 15:40) Krevedko написал(а):
Цитата
Krevedko
А Колин код тут при чём? Мы вообще разбираем разницу Ajax vs jQuery-Ajax.

Разбирайте, кто вам не дает. Колин код при том, что я написал изначально, что код на джиквери, выполняющий аналогичные действия (а это обработка нажатия кнопки, появление анимационной картинки, отправка данных пхп файлу, прием данных от пхп файла,исчезновение анимационной картинки, вывод полученных данных на экран) короче.
Как это реализовано у Коли, как это реализовано у меня. Т.е. я сравнивал с кодом на ирбисе.
Результат АБСОЛЮТНО одинаков. А вы можете спорить дальше, что лучше, что удобнее.

Спустя 3 минуты, 15 секунд (12.02.2012 - 15:43) Krevedko написал(а):
И покажи мне пожалуйста, где я уплотнил код. За базар надо отвечать. Я со скрипом соглашусь с разделением строки $.post("ajax.php", { 'txt':$("#myid").val() }, на две строки (хотя обычно так и пишут в одной, когда параметров мало). Раздели мне хотя бы еще одну строку.

Спустя 13 минут, 54 секунды (12.02.2012 - 15:57) inpost написал(а):
Ну что с тобой спорить, тебе одно говоришь, ты в ответ другое.
И делать мне нечего по 100 раз одно и то же писать.

Спустя 7 минут, 51 секунда (12.02.2012 - 16:05) Krevedko написал(а):
Я еще могу добавить, что строки
$(document).ready(function(){
});
по сути как бэ можно не учитывать.
Что делает код еще короче.

Спустя 2 минуты, 49 секунд (12.02.2012 - 16:07) inpost написал(а):
Krevedko
Ты можешь добавить? Я это на прошлой странице ещё сказал.

Спустя 2 часа, 52 минуты, 21 секунда (12.02.2012 - 19:00) bodja написал(а):
Цитата
Как это реализовано у Коли, как это реализовано у меня. Т.е. я сравнивал с кодом на ирбисе.
Результат АБСОЛЮТНО одинаков. А вы можете спорить дальше, что лучше, что удобнее.


Ну чтож ,давайте поспорим дальше. :)
То,что делает ваш код ,колин делает onClick="Pusk();" ,я недаром намекнул. ;)
Что бы завернуть этот код в одну функцию,вам уже нужно тЫпо плагин лепить. :D
А по факту ,Вы сравнили полную инициализацию обьекта аякса ,передачу и получение всех данных по нему ,с вызовом и передачей аргументов через квери.
Это тоже самое ,что сравнивать полный код библиотеки с кодом ее вызова и передачи аргументов. :D

У меня на колин код ушло пол часа ,на то чтобы переделать его из четырех функций -одну и кода в два раза меньше.
Итого,в результате ,то что вы показали на квери ,у меня выглядит вот так.

onClick="this.src='load.jpg';_('ajax.php',null,'this.src=\'addpost.jpg\'; el(\'txt\').innerHTML=data;')"

Больше вашего? :D
Или начнем еще размеры библиотек сравнивать ?

Не ,в принципе квери неплох,но что меня в нем убивает,так это активная смена языковых конструкций,не брезгуют даже багофичей яваскрипта return this из за чего можно строить цепочки через точку.
Привыкнув к таким конструкциям кода и при попытке в дальнейшем познакомится с языком который применяет ООП по "взрослому"- будете еще плакать крокодильими слезами.
Вам даже чистый яваскрипт покажется детской песочницой.

Спустя 5 минут, 11 секунд (12.02.2012 - 19:05) sharki написал(а):
Цитата
Привыкнув к таким конструкциям кода и при попытке в дальнейшем познакомится с языком который применяет ООП по "взрослому"- будете еще плакать крокодильими слезами.

Это относится к ExtJS =) Вообще радует этот фрамеворк)
Зато меньше конкуренции, ведь чтобы его по настоящему понять, надо как минимум думать объектами... кстати очень помогла для понимания книга "Java для профессионалов том1" там главы про Swing, походу оттуда взята идея объектов и в ExtJS


_____________
伊戈尔
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.