使用jQTouch时,我无法通过mailto链接从Mobile Safari打开Mail应用程序.可能有什么不对?

Mar*_*ell 11 html mailto iphone jqtouch

我正在使用jQTouch开发一个iPhone网络应用程序,它包含一个mailto:指向有效电子邮件地址的简单链接,该地址应该在点击时启动iPhone邮件应用程序 - 但事实并非如此.

如果我在Mobile Safari中访问包含完全相同链接的"普通"网页,并点按它,我会得到预期结果:邮件应用程序会在"收件人"字段中弹出正确的电子邮件地址.

这里是链接HTML(地址已更改)以防万一我疯了并犯了一个愚蠢的错误,但看起来非常好:

<p><a href="mailto:info@mycompany.com">info@mycompany.com</a></p>
Run Code Online (Sandbox Code Playgroud)

有没有人在使用jQTouch时遇到过这种情况?或者至少有人建议我可以调试这个方法吗?当我点击非工作链接时,它闪烁红色(活动链接状态),绝对没有其他任何事情发生.

Tra*_*vis 7

我发现添加target="_blank"到链接有效 - 除了在某些桌面浏览器上,它打开了一个新的空白窗口并打开了电子邮件窗口.当然,jqtouch网站通常不会在桌面浏览器上查看,但我不喜欢这种行为.

相反,这就是我所做的:

  • mailto:链接放在onclick事件中并添加返回false(因此实际链接#不会触发)
  • noHighlight在链接中添加了一个类

这是一个例子:

<a href="#" onclick="window.location='mailto:email@domain.com'; return false;" class="noHighlight">Email me</a>
Run Code Online (Sandbox Code Playgroud)

然后我修改了主题文件中的CSS.

之前:

ul li a.active {
   background: #194fdb url(img/selection.png) 0 0 repeat-x;
   color: #fff;
}
Run Code Online (Sandbox Code Playgroud)

后:

ul li a.active:not(.noHighlight) {
   background: #194fdb url(img/selection.png) 0 0 repeat-x;
   color: #fff;
}
Run Code Online (Sandbox Code Playgroud)

我添加noHighlight该类的原因是没有它,按钮会突出显示并"粘住",这使按钮看起来仍处于某种活动状态.为了解决这个问题,我添加了类并修改了CSS,如上所述.

什么是CSS变化的确是,如果链接(里面li是一个内ul)具有类noHighlight,它不会改变的背景或文本颜色.

现在似乎在桌面和移动浏览器上都很好用.


Mar*_*ell 5

我再次查看了jQTouch演示包中的示例代码,发现他们正在target="_blank"为他们的电子邮件链接添加一个属性.

我这样做了我的链接,它开始工作(弹出邮件客户端窗口).然而,这是一个标准的Web页面的链接的作品为好,但没有target="_blank"属性...

我很困惑,但如果您的移动页面使用jQTouch,添加该属性似乎可以解决此问题.