- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Приветствую.
Я не понимаю ни синтаксис...ничего в JS, но кое-как "допер" как сделать карту на Raphael.
Есть много повторяющегося во многом однотипного кода, который добавляется отдельно каждому аттрибуту. Хотелось чтобы повторяющийся код, например, заливка, обводка и др., можно было объединить для уменьшения размера файла, а свойства отрибутов, которые не повторяются записать отдельно.
Помогите сгруппировать свойства JS.
Вот пример кода:
window.onload = function() {
var mosmap = Raphael("mosmap", 698, 790);
mosmap.setViewBox(0,0,698,790);
var one = mosmap.path("M400.555,400...КООРДИНАТЫ...55,400.583z");
one.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
title:'один',
corsor:'pointer',
'text':'hello',
}); *
one.mouseover(function() {
this.attr({
fill: '#18A5FF',
stroke:'#444',
cursor:'pointer',
});
this.animate({'stroke-width': 1}, 7, 'linear');
});
one.mouseout(function() {
this.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
});
});
var two = mosmap.path("M400.555,...ЕЩЕ КООРДИНАТЫ...555,400.583z");
two.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
title:'Арбат',
corsor:'pointer',
'text':'hello',
}); *
two.mouseover(function() {
this.attr({
fill: '#18A5FF',
stroke:'#444',
cursor:'pointer',
});
this.animate({'stroke-width': 1}, 7, 'linear');
});
two.mouseout(function() {
this.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
});
});
...
};
Вот эта часть повторяется много раз, но с разными координатами и названиями правил:
var one = mosmap.path("M400.555,400...КООРДИНАТЫ...55,400.583z");
one.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
title:'один',
corsor:'pointer',
'text':'hello',
}); *
one.mouseover(function() {
this.attr({
fill: '#18A5FF',
stroke:'#444',
cursor:'pointer',
});
this.animate({'stroke-width': 1}, 7, 'linear');
});
one.mouseout(function() {
this.attr({
fill: '#FFB2B6',
stroke: '#444',
'stroke-width': 1,
'stroke-linejoin': 'round',
});
});
Вот эта часть повторяется много раз, но с разными координатами и названиями правил:
Какой же тогда это повтор, если там все таки разные координаты и названия правил?...
Какой же тогда это повтор, если там все таки разные координаты и названия правил?...
Правила-то одни и те же за исключением координат и title