Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   ЧаВО - часто задаваемые вопросы (faq) (https://javascript.ru/forum/misc/9459-chavo-chasto-zadavaemye-voprosy-faq.html)

Андрей38 22.11.2011 13:21

Спасибо.Я как то не замечал такого .К файлу я добираюсь через Файлы-правая кнопка-(там )ИСЛЕДОВАТЬ_ так попадаю в Виндовский проводник-затем архивирую .ну и все, вроде

Андрей38 24.11.2011 15:16

http://ruseller.com/lessons.php?rub=32&id=700
Квери стало популярно и вот , сделали обяснение

FINoM 26.11.2011 05:58

Не квери, не кувери, не кверти, а jQuery (или Джиквери хотя-бы). Это то же самое, что и JAVA script, блин.

melky 26.11.2011 12:31

я ещё "жиквери" слышал. лучше уж тогда JQ.

Андрей38 26.11.2011 14:18

Цитата:

Сообщение от melky (Сообщение 139072)
я ещё "жиквери" слышал. лучше уж тогда JQ.

...Извините .Не втему. Чем померять скорость поиска в JQ?
1)
$('#Fo *:eq(234)')
alert(XXX_1 time)
2 )
$('#Fo .e-234)')
alert(XXX_2 time)
3 )
$('#Fo ').find('.e-234')
alert(XXX_3 time)
4 )
$('#Fo ').find('*:eq(234)')
alert(XXX_4 time)
?????????????????????
И еще просил бы сказать СРАЗУ,что здесь ищет быстрее всего

x-yuri 26.11.2011 15:09

Цитата:

Сообщение от Gozar
Андрей38,
Заканчивай с Поповым и рулонами постов в этой теме. Заведи себе блог или создавай темы с вопросами. Эта тема для внесения в faq. Если нет предложений, то просьба больше в эту тему не писать.

  

melky 17.05.2012 10:37

Насчёт возвращения значения из функции аяксового запроса в jQuery.


Вопрос :

у меня код возвращает deferred\undefined, вместо результата запроса!
function req(){
    return $.ajax({
        url: '/foo.php',
        method: 'GET',
        success: function(data){
            return data; // <-- проблема тут?
        }
    });
}

var myData = req();
alert(myData);

Ответ :

Проблема в том, что в jQuery по-умолчанию (без указания параметра async в false) совершаются асинхронные* запросы, поэтому функция - обработчик события завершения запроса (success) - исполнится через какое-то время. А интерпретатор JS будет исполнять код дальше, не дожидаясь конца запроса, и получается, что функция возвратит результат работы $.ajax ($.Deferred), или undefined.

* асинхронные в смысле асинхронности самого JS.
Как решить?

Либо указывайте параметр синхронного запроса (async: false), но будьте готовы к заморозке интерфейса на время совершения запроса, либо оборачивайте код, использующий результат запроса в функцию и указывайте её в success, тогда будет гарантия на то, что код исполнится в тот момент, когда данные получены:
function req(){
    return $.ajax({
        url: '/foo.php',
        method: 'GET',
        success: function(data){
            handle(data);
        }
    });
}

var handle = function(data){
    alert(data);
}


P.S. каждый день этот вопрос задают. буду ссыль кидать на этот пост :)

Gozar 22.05.2012 21:04

OK

melky 18.06.2012 13:51

Как сделать такой же скролл, как у ВКонтакте, при просмотре фотографий


Я не сижу ВКонтакте! Что это за скролл?
Это такой эффектик (дизайнерская находка, трикс - называйте, как хотите), при котором модальное окно скроллится, если не помещается в видимую часть страницы. Так же это называется "скроллом отдельного блока", "скроллом модального окна".
Вкратце, как оно работает?
Всё просто: контент страницы находится во wrapper'e, а рядом с ним (т.е. в том же родителе, что и контент) находится wrapper модального окна (далее "ширма"), который имеет прокрутку по вертикали и фиксированные размеры на всю видимую часть страницы (т.е. размеры окна. В примере я использовал фиксированное позиционирование со стопроцентными шириной и высотой.). Соответственно, когда модальное окно скрыто, эта ширма тоже скрыта, когда модальное окно показано, ширма видима. Для того, чтобы скрыть скролл контента, элементу <body> устанавливают overflow: hidden, пока модальное окно показано. В старых IE следует убирать прокрутку у элемента <html>*.
Пример кода:
Необходима свободная страница, без панелей редактирования, поэтому я сделал пример на jsbin. Код комментирован, я думаю, читатель разберётся сам, если будет читать код.

http://jsbin.com/epicom
Код проверен: IE10, IE9, IE8, IE7 (7,8,9 - в режиме эмулирования, Win8 RC), CH19, FF13, O12 <-- Linux x86_64.

В IE "БАГ"
после показа модального окна, для того, чтобы скроллить его, нужно щёлкнуть на нём мышкой. Если знаете решение, прошу отписать в ЛС.
* может быть причина "не в старом IE"

Deff 18.06.2012 14:00

melky,
+ Ток имхо у модалки нун тень на подложку и padding для текста - презентация должна захватывать зрителя


Часовой пояс GMT +3, время: 07:29.