New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FastClick/DataTable: Can't click links in tables on iPad #418

Closed
c-frater opened this Issue Oct 3, 2017 · 0 comments

Comments

Projects
None yet
2 participants
@c-frater
Copy link
Contributor

c-frater commented Oct 3, 2017

Context

When creating a link in a DataTable it isn't possible to click the link on an iPad. It looks like the data table row is consuming the event before it can reach the link - iPads don't seem to follow the standard event bubbling behaviour so it may be that the event is captured before the 'click' makes it to the hyperlink

Expected Behavior

The link click would behave as normal

Actual Behavior

The link click does not work - the user is not taken to another page

Possible Fix

This may be fixed by adding A to the list of DONT_PREVENT_DEFAULT_NODES in the fast click module

Steps to Reproduce

const hx = window.hx

const exampleTable = hx.dataTable({
  feed: hx.dataTable.objectFeed({
    headers: [
      {name: 'Name', id: 'name'},
      {name: 'Age', id: 'age'},
      {name: 'Profession', id: 'profession'}
    ],
    rows: [
      {
        id: 0, // hidden details can go here (not in the cells object)
        cells: {'name': 'Bob', 'age': 25, 'profession': 'Developer'}
      },
      {
        id: 1,
        cells: {'name': 'Jan', 'age': 41, 'profession': 'Artist'}
      },
      {
        id: 2,
        cells: {'name': 'Dan', 'age': 41, 'profession': 'Builder'}
      }
    ]
  }),
  columns: {
    name: {
      cellRenderer: (e, d) => hx.select(e)
        .add(hx.detached('a').attr('href', 'http://www.google.co.uk').text(d))
    }
  }
})

hx.select('body')
  .clear()
  .add(exampleTable)

Your Environment

  • Browser Name and version: Safari/Chrome
  • Operating System and version (desktop or mobile): iPad (mobile)

c-frater added a commit that referenced this issue Oct 3, 2017

Fix fast click handling for links
The current fast click handling causes links to be disabled in tables
as iPad event bubbling happens in a different order from desktops /
other devices.

Adding `A` to the list of elements seems to resolve the issue, however
it may be that it was intentionally not added to the list of elements.

Related to: #418

@c-frater c-frater referenced this issue Oct 3, 2017

Merged

Potential Fix: Fast click handling for links #419

5 of 6 tasks complete

@jmsmyth jmsmyth closed this Oct 9, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment