Какие события DOM доступны WebKit на Android?

Возможно, вы захотите перейти на новые компоненты материала. Помимо этого, это то, что работает для меня. Вы включили стили appcompat для своего приложения?

<com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="@dimen/fab_margin"
        app:srcCompat="@drawable/round_add_white_24" />
32
задан John 3 April 2012 в 02:26
поделиться

2 ответа

Хорошо, это интересно. Мой вариант использования - то, что у меня есть ряд ссылок (A теги) на экране в представлении WebKit. Для тестирования, какая область событий доступный, использующий jQuery 1.3.1, я присоединил каждое событие, перечисленное на [1 119] эта страница (даже, которые не имеют смысла) к ссылкам, затем используемым, вниз, и, вводят средства управления в эмулятор Android и отметил который события, запущенные в который обстоятельства.

Вот код, за которым я раньше присоединял события с результатами для следования. Отметьте, я использую "живую" привязку события, потому что для моего приложения, A теги вставляются динамично.

$.each([
    'blur',
    'change',
    'click',
    'contextmenu',
    'copy',
    'cut',
    'dblclick',
    'error',
    'focus',
    'keydown',
    'keypress',
    'keyup',
    'mousedown',
    'mousemove',
    'mouseout',
    'mouseover',
    'mouseup',
    'mousewheel',
    'paste',
    'reset',
    'resize',
    'scroll',
    'select',
    'submit',

    // W3C events
    'DOMActivate',
    'DOMAttrModified',
    'DOMCharacterDataModified',
    'DOMFocusIn',
    'DOMFocusOut',
    'DOMMouseScroll',
    'DOMNodeInserted',
    'DOMNodeRemoved',
    'DOMSubtreeModified',
    'textInput',

    // Microsoft events
    'activate',
    'beforecopy',
    'beforecut',
    'beforepaste',
    'deactivate',
    'focusin',
    'focusout',
    'hashchange',
    'mouseenter',
    'mouseleave'
], function () {
    $('a').live(this, function (evt) {
        alert(evt.type);
    });
});

Вот то, как это вытряхнуло:

  • На первой странице не загружаются ни с чем выделенным (никакая ужасная оранжевая рамка выделения вокруг никакого объекта), с помощью вниз кнопку для выбора первого объекта, следующие запущенные события (в порядке): mouseover, mouseenter, mousemove, DOMFocusIn

  • С выбранным объектом, перемещаясь в следующий объект с помощью вниз кнопка, следующие запущенные события (в порядке): mouseout, mouseover, mousemove, DOMFocusOut, DOMFocusIn

  • С выбранным объектом, нажимая "ввести" кнопку, следующие запущенные события (в порядке): mousemove, mousedown, DOMFocusOut, mouseup, click, DOMActivate

Это кажется мне набором случайного мусора. И, кого то развязное событие (mouseenter) только для IE делает камеей, затем беря остальную часть выходного? О, хорошо по крайней мере теперь я знаю что события наблюдать за.

было бы замечательно, если другие хотят взять мой тестовый код и сделать, более полное пробегает, возможно, с помощью элементов формы, изображений, и т.д.

22
ответ дан 27 November 2019 в 21:06
поделиться

As of Android 1.5, the same touch(start|move|end|cancel) events that the iPhone supports work in Android as well.

One problem I found was that touchmove ends get queued up. No workaround yet.

6
ответ дан 27 November 2019 в 21:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: