Apple Safari Buttons onclick takes to long - html

i have a simple system to register who is present at a party.
I created an easy numkeypad with buttons, and that works. But when I try it in Safari (or any other mobile browser), it takes about a second before I can press the next button. It has to be quick, so this is too long.
Is there any way to shorten this "waiting" time between button presses.

click events are delayed in mobile browsers due to the fact the browser has to ensure the user isn't double-tapping or tap-holding an element.
I have written a jQuery plugin that can handle touch and mouse events in a convenient way, and allows you to bind one event to trigger without a delay (tap). You can check it out here:
https://github.com/benmajor/jQuery-Mobile-Events

Related

Click does not work on iPad when pressed for too long

I have developed a webapp which we usually run on an ipads browser, usually Chrome. There is a problem for a older users when they need to press on a button. They usually press hard and longer than average users, thus the click never gets registered.
The app is an angular app and I've tried to bind a (mousedown) event in hopes of making it fire the event when first touch it. But it seems like that when you hold it down longer on an ipad, it just starts to focus on the text.
Any ideas on how to improve the UX in this case? A lot of older users gets frustrated because to them it does not work.
When you hold your finger on the button you may never reach the mouse events, especially if you move your finger a little. You may check the order of events here https://patrickhlauke.github.io/touch/tests/event-listener_all-no-timings.html
To handle your issue you may handle either pointerdown or touchstart event.

What happened from you touch the screen till iOS app receive the click event?

There is a button in the middle of an app. After you touch the screen and click on it, you receive a click event on the button. What happened in the middle?
I used to face a bug, use the UIWebView, one input element in an HTML can't response the click event, but the WkWebview can.
Now I want to confirm the question below:
What happened from you touch the screen till iOS app receive the click event?
After I had viewed the Woodstock's answer. I edit this question.
Don't consider the hardware, just think the iOS system.
There are multiple events triggered, for example:
Finger down, Finger moved, Finger Up.
Additionally there are events for where that occurred, e.g. inside or outside a control.
If you are asking what's happening in the quantum between contact with the capacitive display and the processing of the event by iOS this is not well defined.
Suffice to say, clock cycles and processing :)

LibGDX Input from previous screen registering

I am using isTouched to setScreen from my menu screen to my main game screen. (Tap to continue).
In the constructor of the main game screen, I set the input processor. The input processor then immediately fires from the touch on the previous screen.
What is the proper way to handle this?
EDIT: If I tap my finger on an Android device, the tap triggers the isTouched/justTouched. Then the next screen loads faster than I lift my finger and the finger up event triggers my input processor.
I don't think there is any built-in way to prevent this sort of event leakage. One way to avoid the problem is to trigger your transition on release, not press.
Switch your main menu to use an InputProcessor. Use the end-of-touch event to trigger your transition, so that event won't be around to pollute your new InputProcessor. This will avoid mixing polling and event-based input, which seems cleaner, too.
Set a flag when isTouched is true, then in later a render iteration when isTouched is false, and the flag is true, you know it is safe to proceed (this is a hacky polling version of waiting for the touch-up event).
In many UIs button events trigger on the touch-up (or its equivalent). E.g., in this stackoverflow UI, click down on the "Post Your Answer" button, then drag the mouse off the button and release. The button doesn't "click". (Similarly if you click outside the button, drag into it, and then release, it still doesn't "click".)

Reliably detect if a user is using a mouse on a webpage?

On our page we have some iframes in a long horizontally-scrolling <div>. If the user is using a mouse they can scroll with the scrollbars and we would like them to be able to select text within the iframes. If they are using touch only however, the scrollbars are a hassle and I would like to overlay a transparent element over the whole thing to give them the ability to scroll easily by dragging, this of course sacrifices the select-text feature but makes sense in that scenario.
Which gets me to my question, is there a way to reliably detect if a user is interacting with a webpage via a mouse?
Everything I've seen on detecting touch or mouse is that touch will broadcast mouse events so it is very difficult to detect touch OR mouse (not to mention that you can have both). My problem is simpler - it is whether the user has interacted with the page via a mouse.
Can anyone think of a way to check this reliably?
A mouse can do one single thing a touch device can never do - move without having any buttons pressed. So I'd just install an onMouseMove event on page load, and if it triggers without buttons pressed mark the user as a mouse user. You could then persist this through a cookie or LocalStorage since the flag will not change within the same environment, and remove the event right away. The precise way of implementing the single-fire event depends on which library you use (if any at all), but it should be easy with Mootools/JQuery docs in hand.
In general I'd recommend the easier route of just checking for a touch interface in most cases :
if('ontouchstart'in window)
{
/* it's a touch device */
}

Disable back space key for browser based AS3 application

this is insanely annoying problem:
AS3 full screen application based on ADOBE FLEX 4, text field. User types something in text field, and then starts clicking backspace many many times to remove what he just wrote, and for some reason, instead of removing characters from text field it tells browser to GO BACK and user navigates away. Why?! Please, please help, this is so terrible. My users are losing important unsaved this is data while using my application!
i am using safari browser
PLEASE HELP.
Wow, this is terrible, I am so irritated, it happens every single time
It is possible that the focus is lost from your text field when hitting the backspace multiple times (check if you are firing some events on the text field that may cause this), which causes the main window to take focus and trigger 'Back' on the browser.
The root of the problem is that the browser carries out keyboard shortcuts REGARDLESS of the flash app having the focus or not. From what I heard this problem does not exist on Safari's for Mac, only Safari for Windows.
I would check to see what browser you are in and then create a popup saying you this app does NOT work on Safari browser ON windows.
Scratching head*
Well maybe if HAD to solve this, I would use the ExternalInterface to interact with Safari or javascript to PREVENT the history back button from getting applied. So it won't go back to an old page. That is what I would look into.