Javascript 如何显示链接取决于设备系统。(PHP邮件)
我正在使用php发送电子邮件。 当用户打开我的电子邮件时,我会在那里发送一些文本和链接。 我不希望,如果一个用户使用iphone——istore上会有一个链接,或者如果他使用的是android——会有一个到play market的链接,或者如果他使用的是web浏览器(PC)——它会显示一个到站点的链接 如何创建这些案例?Javascript 如何显示链接取决于设备系统。(PHP邮件),javascript,php,email,hyperlink,message,Javascript,Php,Email,Hyperlink,Message,我正在使用php发送电子邮件。 当用户打开我的电子邮件时,我会在那里发送一些文本和链接。 我不希望,如果一个用户使用iphone——istore上会有一个链接,或者如果他使用的是android——会有一个到play market的链接,或者如果他使用的是web浏览器(PC)——它会显示一个到站点的链接 如何创建这些案例? 我有一个使用js的想法,但是我不能用电子邮件发送js代码 您可以使用用户代理并在JavaScript中检测用户的设备 /** * Determine the mobile o
我有一个使用js的想法,但是我不能用电子邮件发送js代码 您可以使用
用户代理
并在JavaScript中检测用户的设备
/**
* Determine the mobile operating system.
* This function returns one of 'iOS', 'Android', 'Windows Phone', or 'unknown'.
*
* @returns {String}
*/
function getMobileOperatingSystem() {
var userAgent = navigator.userAgent || navigator.vendor || window.opera;
// Windows Phone must come first because its UA also contains "Android"
if (/windows phone/i.test(userAgent)) {
return "Windows Phone";
}else if (/android/i.test(userAgent)) {
return "Android";
}else if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) {
return "iOS";
}else if (screen.width >= 480) {
return "PC"
}
return "unknown";
}
但是,在您的情况下,没有必要检测用户的设备或操作系统。正如评论中提到的,为什么不把所有的链接放在那里,让用户选择他们喜欢的平台呢
另一方面,这可以通过在某个设备上发送和发送电子邮件,并在另一个设备上检查相同的电子邮件来轻松实现
尽管如此,由于JavaScript是在客户端运行的,因此用户可以对其进行操作,因此出于安全原因,您可能希望使用或预构建
参考文献
您可以使用
或者获取用于操作系统和浏览器的
请记住,这些信息可能会被欺骗。
如果您有此信息,您可以通过要发送的链接交叉检查用户代理。下面是一个可能的列表,因为您也不能在电子邮件中嵌入PHP,您在发送电子邮件之前是否检测到用户平台?为什么不包括所有链接,以防他在手机上浏览您的网站,但在桌面上收到电子邮件?当您使用php发送邮件时,您如何知道客户端将来将使用哪个浏览器打开此邮件?你必须需要JS,否则就没有办法了。不过,这最多只能在用户在网站上并触发发送此电子邮件的那一刻起作用。在实际的电子邮件中,您可以忘记执行自己的JavaScript,这几乎会在任何地方被阻止。如果在实际发送电子邮件之前选择了正确的链接呢?那么问题将是它是否仍然是“正确的链接”在我检查我的电子邮件时…可能是在一个完全不同的设备上。这是正确的,这就是为什么我建议将每个链接都放在那里,让用户选择合适的链接。我认为这是不可能的,他不会一直知道用户将使用哪个电子邮件客户端打开邮件。这必须用JS来完成,谢谢你在发送邮件前的提醒。他显然不能(不应该)用邮件发送脚本。不过,他也可以将邮件发送到一个简单的html登录页,在那里他检查这些信息并打印出正确的link.JS在电子邮件客户端中工作,但这并不保证。我认为它应该与JS,否则没有其他选择,因为用户可以打开电子邮件从iPhone和Android这两个设备,这将导致电子邮件的错误版本作为其静态。我没有考虑这一点。不过,我不会在邮件中发送脚本,因为我担心邮件服务器会抱怨,让我成为垃圾邮件或更糟的人。。。在官方筛选列表中列出潜在利用漏洞邮件的原因。就像我们的管理员如此英勇地实现了。。。如果在他的用例中可能的话,我会在发送邮件之前检查一下。他还说他不能在邮件中发送js脚本吗?