jquery - изменить гравитацию / положение всплывающей подсказки?
Есть ли какой-нибудь способ отредактировать положение или гравитацию (я не знаю, что правильно) типси? Сам плагин имеет несколько опций гравитации, которые вы можете назначить через скрипт:
nw | n | ne | w | e | sw | s | se
Я сейчас пользуюсь s
положение, как вы можете видеть в скрипке: http://jsfiddle.net/cnLW8/
Но мне было интересно, можно ли отредактировать положение Типси так, как оно показано в центре элемента. Не рядом, выше или дальше, но относительно близко к центру?
В настоящее время я делаю это, устанавливая свойство css .tipsy
класс для:
.tipsy{
margin-top: 30px;
}
Но я думаю, что есть более разумное решение, отредактировав его через скрипт или что-то еще...
Любая помощь или совет приветствуется.
1 ответ
Я не смог проверить это, но я думаю, что добавление нового случая в блок переключателей в tipsy.js сделает это.
Я добавил случай z, используя математику из s для получения левого значения и математику из w для получения верхнего значения, результат должен быть мертвой точкой. Просто добавьте кейс в ваш файл js и перезагрузите его, используя кейс z.
switch (gravity.charAt(0)) {
case 'n':
tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
break;
case 's':
tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
break;
case 'e':
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset};
break;
case 'w':
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset};
break;
case 'z':
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width / 2 - actualWidth / 2};
break;
}