Выпадающее меню Dojo не открывается в браузере QtWeb - PullRequest
0 голосов
/ 27 февраля 2012

Я использую браузер QtWeb ( www.qtweb.net ) для своей разработки. Когда я пытаюсь открыть следующий URL в браузере, раскрывающиеся меню кнопок не открываются: http://archive.dojotoolkit.org/nightly/dojotoolkit/dijit/tests/form/test_Button.html

Эта проблема не видна в других браузерах.

Любые обходные пути / предложения / идеи будут оценены.

1 Ответ

0 голосов
/ 23 марта 2012

Я столкнулся с той же проблемой. Интересно, что всплывающие меню не работают, начиная с версии 1.7.1. Это не ошибка додзё. Это какая-то ошибка в QtWebKit. Проблема в устройстве с сенсорной панелью, которое определено по умолчанию в предварительно скомпилированных библиотеках qt webkit (даже если сенсорная панель не существует физически).

  1. Временное решение - отредактировать файл dojo / has.js (найдите эти строки в dojo> = 1.7.1):

    if(has("host-browser")){
        var agent = navigator.userAgent;
        has.add("dom-addeventlistener", !!document.addEventListener);
        has.add("touch", "ontouchstart" in document);        <<<<< Comment this line
        has.add("device-width", screen.availWidth || innerWidth);
        has.add("agent-ios", !!agent.match(/iPhone|iP[ao]d/));
        has.add("agent-android", agent.indexOf("android") > 1);
    }
    
  2. Вот другое решение (более болезненно): Ссылка на полезный источник сообщений Вы должны перекомпилировать QtWebKit с DEFINES + = ENABLE_TOUCH_EVENTS = 0, который определен в WebCore / features.pri. Тогда вы QT веб-проектов будут работать правильно!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...