Я думаю, что проблема намного проще: вы забыли указать модификатор u
. Свойства символа Юникода: доступны только в режиме UTF-8 .
Ваше регулярное выражение должно быть:
// unicode letters, apostrophe, hyphen, space
$namePattern = '/^[-\' \p{L}]+$/u';
Этот тип ситуации обрабатывается обещанием с выполнено . Согласно документу:
Обещание: вернуть объект Promise, чтобы наблюдать, когда все действия определенного типа, связанные с коллекцией, поставленные в очередь или нет, завершены.
Готово: добавить обработчики, которые будут вызываться при разрешении отложенного объекта.
blockquote>.animate('Your-Selectot') .promise() .done(function () { $(this).css('backgroud-color', 'blue'); // Its only sample to describe situation. });
done
обратный вызов вызывается после того, как коллекция очистит свои очереди.