- This topic has 9 replies, 3 voices, and was last updated 12 years, 4 months ago by
mreade.
-
AuthorPosts
-
mreadeMemberSupport,
I recently packaged an iOS app and i have this installed on my iPhone 5. After installing the app, I have noticed that there are times when i need to “double-tap” the push buttons to perform the command, or to clear the fields.
Any thoughts why this might be so?
Thanks
mreade
February 6, 2013 at 4:32 pm #335107
support-octavioMemberIs a web app or native app?
Could you try build a simple example and check if this behavior is the same?
Could be that maybe your device is not recognizing when you tap it?February 6, 2013 at 5:04 pm #335115
mreadeMemberHello Octavio,
It was built as a Native App. If I recall, it was doing the same when I was testing it through the Test Center as well as after installing the ipa setup file.
mreade
February 6, 2013 at 5:43 pm #335116
WaylandDavisMemberHi.
This may be the “delay” of 300 microseconds that iOS puts in their “clicks.” I was running into what I thought was a need to double click, but instead it was a delay. I fixed it with the “TAP” from jquery.mobile.js.
Used that mobile file and here’s the event I added in the phoneui.documentReadyHandler = function() area:
$(“m1-SPC-btn20pct”).tap(function(event)
{
if(cordovaready == true) {
navigator.notification.vibrate(1000); // this just vibrates when btn pushed
}
event.preventDefault(); // turns off the old 300 ms delay.
});February 6, 2013 at 5:58 pm #335117
mreadeMemberThanks Octavio,
So, just so I completely understand your last post.
Do I use exactly the same code snippet you have provided? Do I need to change anything?
Do I need to add any javascript commands to the push buttons? Or, just add the code snippet to the phoneui.documentReadyHandler = function() area?
Thanks in advance.
mreade
February 7, 2013 at 10:04 am #335140
WaylandDavisMemberI’m not Octavio – I’m wildwex…anyway.
You need to use the code for each button or other element you intend to Tap.
$(“Your-button-name-here“).tap(function(event)
{
if(cordovaready == true) {
navigator.notification.vibrate(1000); // this just vibrates when btn pushed
}
event.preventDefault(); // turns off the old 300 ms delay.
});Hope it helps.
wildwex
February 7, 2013 at 12:02 pm #335142
mreadeMemberThanks for the reply.
Although I cannot see the yellow text too good, i can copy and paste it to see what you have typed.
Many thanks,
mreade
February 13, 2013 at 2:49 pm #335388
mreadeMemberWildwex,
I have a “Clear” “Calculate” “Email” push button on several forms. The Clear button on call forms is ID: push1, The Calculate button on call forms is ID: push2, and the Email button on all forms is ID: push3
Will I need to create 1 snippet of code for each of the 3 push buttons, for each form?
In other words,
Form1 = 3 push buttons, 3 separate snippets of code
Form2 = 3 push buttons, 3 separate snippets of code
Etc.Or, can i prepare 3 snippets of call (1 for each push button) that will apply to all “push1” buttons on all forms, etc.
I have 25 forms x 3 push buttons on each form for a total of 75 push buttons
25 forms have 1 push button called “push1”
25 forms have 1 push button called “push2”
25 forms have 1 push button called “push3”I am just trying to explain this with as much detail as possible to make sure i get this right. So bare with me….
Form1:
$(“m1-Form1-push1”).tap(function(event)
$(“m1-Form1-push2”).tap(function(event)
$(“m1-Form1-push3”).tap(function(event)Form2:
$(“m1-Form2-push1”).tap(function(event)
$(“m1-Form2-push2”).tap(function(event)
$(“m1-Form2-push3”).tap(function(event)Form3:
$(“m1-Form3-push1”).tap(function(event)
$(“m1-Form3-push2”).tap(function(event)
$(“m1-Form3-push3”).tap(function(event)Form4, Form5, etc.
Etc…………..
I am wondering if it is possible for the MobiOne developers to built a new property into the Push Button Widget so users could set time event if/when required?
Thanks in advance
mreade
February 13, 2013 at 3:54 pm #335394
WaylandDavisMemberHi,
I’m still a little new to jQuery and Javascript, but here is a snippet I use to handle multiple buttons in another app:
elem = document.body.getElementsByTagName(‘*’);
for(c=0;c<elem.length;c++)
{
elem[c].css(“z-index”, “0”); // This sets all Z positions to 0.
elem[c].css(“position”, “fixed”); // Keeps things from moving around.
$(elem[c]).tap(function(event) // Fix “click” to be a tap to get rid of 300 ms delay.
{
if(cordovaready == true) {
navigator.notification.vibrate(1000); // Vibrate when user select items for feedback.
}
event.preventDefault(); // Prevents the normal click actions, i.e. delay.
});}
I’m thinking there may be a jQuery wildcard using $(“[id^=m1-Form]”) that you can use and iterate through all the buttons in the entire document.
February 13, 2013 at 6:11 pm #335396
mreadeMemberThanks Wildwex, you are certainly much more advanced that me at this point! 🙂
Maybe we can get Support to chime in on this?
Support???
Thanks
mreade
-
AuthorPosts