I try to show popup on double click event (in table field), so I add this action by knockout approach. This event works in browser, but it doesn't work on ios or android platform. What should i do to fix this?
<div class="contentContainer" data-bind="dxScrollView: { direction: 'vertical' }">
<div class="dx-fieldset">
<div data-bind="foreach: finalDataSource">
<div class="dx-field">
<div class="dataKey dx-field-label" data-bind="text: $data.ColumnName, event: { dblclick: $root.showPopup }"></div>
<div class="dataValue inp dx-field-value" data-bind="
dxTextBox: { enable: false, value: $data.Value, clickAction: $root.inpClick }">
</div>
</div>
</div>
</div>
</div>
function showPopup(sender) {
MyApp.app.column.id(sender.ColumnId);
MyApp.app.column.name(sender.ColumnName);
getPopupDataSource();
popupVisible(true);
}
Problem is resolved with hammer.js
var elements = document.getElementsByClassName('dataKey');
for (i = 0; i < elements.length; i++) {
Hammer(elements[i]).on("doubletap", function (event) {
showPopup(ko.dataFor(event.srcElement));
});
}
This action is started on "viewShown"
Now on doubleTap event my popup appears.