为什么是 https://www.amazon.com 上的 console.log(location.href);
在控制台中显示正确的 URL,但是当尝试使用 JavaScript 书签将 URL 发送到电子邮件客户端时,它无法从 https://www.amazon.com 获取 URL ?
下面是 JavaScript 书签的代码,它适用于除 amazon.com 之外的几乎所有网站。
javascript:location.href=%27mailto:?SUBJECT=%27+document.title+%27&BODY=%27+escape(location.href);
注意:我也尝试过 window.location.href
但无济于事。
我也尝试过这种变体:
javascript:location.href='mailto:?SUBJECT='+document.title+'&BODY='+escape(location.href);
(在 Google Chrome 版本 64.0.3282.140 中测试)
最佳答案
看起来 Amazon.com 的标题超出了 RFC2322 建议的电子邮件主题行长度 78 个字符.
他们的标题目前有 84 个字符。 “Amazon.com:电子产品、服装、电脑、书籍、DVD 等在线购物”
有趣的是,Outlook 2016 仅包含 document.tile
的前 78 个字符,并且电子邮件正文不包含 location.href
中的 URL。
在 document.title
上使用 slice(0, 77)
方法后,URL 现在包含在电子邮件正文中。
这是更新后的书签。
javascript:location.href='mailto:?SUBJECT='+document.title.slice(0, 77)+'&BODY='+escape(location.href);
关于javascript - 使用 JavaScript 将当前 URL 发送到电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48773260/