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;
            }
Другие вопросы по тегам