вторник, 18 мая 2010 г.

CSS меню. Предварительная загрузка изображения

Искала решение для CSS меню, с предзагрузкой изображения, чтоб в момент наведения на пункт меню, мы не наблюдали секундное отсутствие бекграунда. Так вот наткнулась на гениальное решение, правда не для всех случаев, но для простых меню - идеальный вариант, без наворотов и javascript.
http://www.xiper.net/html-and-css-tricks/css-tricks/preload-images.html
ищем
Решение 1 — подходит для rollover эффекта

Проверено во всех браузерах - работает :)

среда, 12 мая 2010 г.

AS3 Опять регулярные выражения

Надо было проверить поле ФИО на ограничения:
три слова, в фамилии допускается дефис, лишние пробелы убираются


var fio_string:String = popup_reg.name_txt.text;
function slice_fio(string:String):String
{
var myPattern = "  "; // строка поиска
while (string.charAt(0) == " ")
  string = string.slice(1);
while (string.charAt(string.length - 1) == " ")
  string = string.slice(0, string.length - 1);
while (string.indexOf("  ")>(-1)) // Если еще имеются двойные пробелы
 string = string.replace(myPattern, " "); // то заменяем их на один
return string;
}
fio_string = slice_fio(popup_reg.name_txt.text);
popup_reg.name_txt.text = fio_string; // переписывается строка без лишних пробелов


function informalizeGreeting(str:String):Boolean {
  var pattern:RegExp = /^([а-яёА-ЯЁ_їЇёЁіІєЄ\\-]+\s+[а-яёА-ЯЁ_їЇёЁіІєЄ]+\s+[а-яёА-ЯЁ_їЇёЁіІєЄ]+)$/; // Проверка на три слова, можно вводить только русские и украинские символы и дефис в первом слове.
  var result:Object = pattern.exec(str);
if(result == null) {
return false;
fio_result=0;
}
return true;
fio_result=1;
trace("TRUE!")
        }
  var formalGreeting:String = fio_string;
  trace(informalizeGreeting(formalGreeting));  // true or false