I implemented a simple meteor site that uses google login. It works in desktop browsers. In Chrome, I use mobile device emulation and it also works. It also works on an android device I tried. However, it doesn't work on iphone/ipad. I use safari and chrome in iphone/ipad, but neither works. The issue is that when I click the link to login, nothing happens. But in desktop and android, it brings me to the google login page.
I have a test site: http://wwwtest.meteor.com/
It is deployed in debug mode so you can see the files.
Anything special that prevent iphone/ipad to work?
Thanks.
you need to add cursor: pointer; style to your a element (or catch touchstart/end events as described in the link). It is related to this issue: how-do-i-use-jquery-for-click-event-in-iphone-web-application.
After that, it should work. (Checked on ios simulator and it works)
Related
I have an application with previously worked well with Google Chrome desktop notifications. But it currently have a strange issue.
When the notification should be worked, I receive the notification sound in browser, but the notification box does not appear anymore!
I've tested this on Firefox and it works without any issue. Also, I tested notification working status at https://pushjs.org/ but it did not work too!
I am using the Chrome version 95.0.4638.54 on Windows 10 64-bit.
May you help me to know what is issue? I did not have it previously.
I am working on an application where users need to fill in some personal information to register an appointment. (Can't share too many details as it is confidential work)
At some point, my application opens a "popup" type of component which simply lists the previously filled information for the user. It acts as an overview step before proceeding to the next steps of registration.
I tried this on various browsers. On Pc, it works on Edge, Chrome, Firefox and Opera. On Android, I only tested Chrome, and it worked fine there. On MacOS, I tested Chrome and Safari, and it was fine on both.
But when I tried it on an iPhone, I just get a blank page when I get to this aforementioned step.
I am confused as to what the problem might be, because everywhere else, it seems to work fine. Even on the Apple ecosystem itself, there are devices which render the application correctly.
Any help would be appreciated.
Thank you in advance!
On the device, enable Web Inspector in Safari's settings. Then on a Mac, open Safari, enable the Develop menu if you haven't already and use it to attach to the Web Inspector on the device (there will be a submenu named for the device, with all inspectable frames as menu items). Now you have a full inspector to investigate the problem.
I managed to pinpoint the problem to a date field. For some reason, Safari on iOS could not parse a string timestamp to a specific date (It was throwing an error when I was creating a new Date object and passing in the timestamp to the constructor).
I formatted the date to a string manually and everything is working fine now.
Currently am developing a big project in AngularJS(version 1.3X), Bootstrap(3.3.1), animate.css and few other libraries.
I do test my application on different devices via Google Chrome Developers mode and on few browsers like Google Chrome, Mozilla Firefox and Safari(for Windows7).
I also have possibility to perform tests on Android device and iPhone.
For some strange reason my application seems to work on every device except for iPhone 5 with Safari 5.1.7(when using same Safari but on Windows7 it does work).
Has anyone before stumbled uppon similar problem?
#EDIT
Sorry, forgot to mention what is actually happening.
When I try to press button that's supposed to toggle (using jQuery, I know it should be done via ui-routing, but that's how my boss wants it) portion of the view (panel) it does not work. Buttons do not perform any actions. There is no reaction.
My app is based on AngularJS 1.2.3. The application is enabled as a web app for iOS. The app contains back buttons with onclick handlers with the following code
history.length && history.back()
I've also tried using history.go(-1) as well. Problem is, the browser doesn't navigate back in history in Safari on iOS, or when the app is saved to the home screen as a web app. One thing i find weird however is that it works fine in Chrome on Safari, as Chrome actually is the Safari browser engine.
I know it have worked before, but doesn't anymore for some reason. The iPad is running iOS 7.0.4.
If you are using AppCache history.back will not work on iOS7 (check http://www.sencha.com/blog/the-html5-scorecard-the-good-the-bad-and-the-ugly-in-ios7/).
So if that's the problem, the easiest solution is to disable AppCache.
I'm developing an mobile site and need to invoke a phone call on mobile at the touchend event. On iPhone and Android the window.open('tel:555', '_top') is working fine, invoking a phone call.
On iPad, the default behavior is to offer a "Add to contacts" or "Copy" option. When using a link, it's working fine, as in <a href='tel:555'>555</a>
When trying window.open('tel:555', '_top') on iPad I'm getting:
Cannot Open Page
Safari cannot open the page because the address is invalid.
I've also tried setTimeout('window.location="tel:555";', 500); from How to trigger click-to-call with javascript (iphone), same problem.
Is there a way to invoke the default behavior with Javascript?
I believe this is the correct behaviour.
In the Apple URL Scheme Reference they specifically say that...
If the Phone application is not installed on the device, opening a tel URL displays an appropriate warning message to the user.
I would assume that an iPod Touch would also produce a similar error.