Советы Extjs в выпадающем списке при выборе клавиатуры - PullRequest
2 голосов
/ 26 октября 2011

Я создаю комбинированный список и вставляю подсказки, вставляя атрибут 'qtip' в шаблон (как в этом вопросе).Все работает нормально, за исключением того, что подсказки QuickTips не отображаются в списке комбинированного списка с помощью клавиатуры.

Кто-нибудь знает, как включить подсказки QuickTips при обходе комбинированного списка с клавиатуры?Я использую extjs-3.4.0. Спасибо.


Мой комбо:

Ext.extend(Ext.form.ComboBox, {
    tpl:'<tpl for="."><div ext:qtip="{tooltip}" class="x-combo-list-item">{item}</div></tpl>',
    selectPrev:function () {
        var ct = this.store.getCount();
        var idx = 0;
        if (ct > 0) {
            if (this.selectedIndex == -1) {
                this.select(0);
            } else if (this.selectedIndex !== 0) {
                idx = this.selectedIndex - 1;
                this.select(this.selectedIndex - 1);
            }
            var el = this.view.getNode(idx);
            if (el)
                eventFire(el, "mouseover");
        }
    },
    selectNext:function () {
        var ct = this.store.getCount();
        var idx = 0;
        if (ct > 0) {
            if (this.selectedIndex == -1) {
                this.select(0);
            } else if (this.selectedIndex < ct - 1) {
                idx = this.selectedIndex + 1;
                this.select(idx);
            }
            var el = this.view.getNode(idx);
            if (el)
                eventFire(el, "mouseover");
        }
    },

    onViewOver:function (e, t) {

        var item = this.view.findItemFromChild(t);
        if (item) {
            var index = this.view.indexOf(item);
            this.select(index, false);
        }
    }
});

1 Ответ

0 голосов
/ 28 октября 2011

Быстрые подсказки используют событие мыши для позиционирования qtip, поэтому это не происходит автоматически для вас.Похоже, вам может понадобиться написать собственный код, чтобы заставить это работать.

Я бы попытался присоединить слушателя соответствующего события к комбо (или, возможно, к палитре комбо) и использовать функции Ext.Element (например, alignTo или getPosition возможно), чтобы расположить подсказку там, где вы хотите.Возможно, вы даже не сможете использовать QTip-менеджер напрямую, и вам, возможно, придется создать специальный Ext.Tip.

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

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