Перетаскиваемый пользовательский интерфейс jQuery не отображается должным образом в Firefox / Safari - PullRequest
1 голос
/ 29 июня 2011

Вероятно, это будет выстрел в темноте.Я сделал тестовую страницу для пользовательского интерфейса, перетаскиваемой с простой HTML-таблицей, которая отлично работала во всех браузерах.Я применил нечто похожее на страницу ASP.NET, но она не отображается должным образом в Firefox или Safari.Страница огромная, с множеством происходящих событий, и я не могу публиковать ее на практике.Перетаскиваемые и сбрасываемые области - это теги, которые динамически генерируются в виде сетки.В Chrome и IE все работает как положено.Функция внутри перетаскивания копирует информацию из перетаскиваемого столбца в отброшенный столбец.Эта функция по-прежнему работает в Firefox и Safari, однако, когда я перетаскиваю заголовки столбцов, я не вижу движения на экране, он просто остается на месте (хотя в Firebug я вижу, как его координаты меняются при движении моей мыши).

Вот код:

dragColumns.draggable({
    revert: true,
    start: function () {
        copyColumnIndex = dragColumns.index(this);
    }
});

Хотя без двух вариантов я все еще не вижу перетаскивания.

Есть идеи?

1 Ответ

0 голосов
/ 27 сентября 2011

Вот хак, который я использовал для этого:

firefox = (/firefox/i.test(navigator.userAgent.toLowerCase()));

Теперь у меня есть логический индикатор для использования Firefox. (Зверский хек)

Затем я добавляю это (BRUTAL HACK 2):

helper: firefox === true ? 'clone' : void 0

Это один из вариантов перетаскивания. Похоже, когда он клонируется, он обнаруживается.

Если вы пишете coffeescript, вы можете сделать то, что я сделал для помощника:

helper: 'clone' if firefox is true

Что выглядит немного менее хаккейным, я полагаю ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...