Можно ли использовать всплывающие подсказки пользовательского интерфейса JQuery с CFLayoutArea?

0

Я пытаюсь добавить подсказки JQuery UI в контент внутри CFLayout. Однако в IE8 (режим quirks) всплывающая подсказка появляется напротив левого поля браузера. Я считаю, что это какая-то несовместимость между JQuery и Ext-JS.

Чтобы протестировать, я попытался создать абсолютно позиционированный div с левой <CFLayoutArea 200px в <CFLayoutArea чтобы увидеть, будет ли он также <CFLayoutArea влево от браузера, но это не так. Вместо этого он появился на 200px с левой стороны <CFLayoutArea тогда как он должен появиться на 200px с левой стороны окна браузера.

Кто-нибудь сталкивался с проблемой и разрешал подобную проблему? Переключение режима quirks на данный момент не является опцией.

ОБНОВИТЬ

Мне удалось взломать, используя такой код:

open: function (event, ui) {
    updateTooltipPositions();
}



function updateTooltipPositions() {
    $("[id^='ui-tooltip-']").css("left", mouseX-401);
    $("[id^='ui-tooltip-']").css("top", mouseY+1);
}

Однако это не чистое решение, и оно предотвращает анимацию при показе всплывающих подсказок.

  • 2
    Проблема, вероятно, с cflayout . Пользовательский интерфейс в ColdFusion ужасен. Сделайте себе одолжение, вырвите его и используйте библиотеку JS по вашему выбору, например, jQuery или ExtJS.
  • 0
    К сожалению, это не вариант здесь. Мне нужно найти обходной путь в настоящее время.
Показать ещё 10 комментариев
Теги:
extjs
coldfusion
jquery-ui-tooltip

1 ответ

1
Лучший ответ

В итоге мы решили использовать следующий хак:

 open: function (event, ui) {
     updateTooltipPositions();
 }

 function updateTooltipPositions() {
     $("[id^='ui-tooltip-']").css("left", mouseX-401);
     $("[id^='ui-tooltip-']").css("top", mouseY+1);
 }

Кроме того, IE дал нам некоторые проблемы с ручным закрытием всплывающих подсказок. Чтобы избежать этого, нам пришлось вынудить эту конкретную страницу из режима причуд:

 <cfheader name="X-UA-Compatible" value="IE=Edge">   <!--- Force browser into standards mode --->

Ни одно из них не является оптимальным решением. Тем не менее, они работали для нашей чувствительной ко времени ситуации.

  • 0
    Для каких версий IE это работает?
  • 0
    Мы используем его для IE8, хотя я считаю, что он переведет каждую версию IE в стандартный режим. «IE = Edge» должен оставлять только Firefox, Chrome и другие браузеры, если ваша страница не полностью соответствует (у нас есть некоторые проблемы).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню