[英]Javascript Mailto without Href
我要求单击链接的位置应打开要发送给我单击其名称的用户的邮件。 我正在通过构造Anchor标记并设置href属性来做到这一点,我面临的问题是,我们的平台具有一项功能,可显示警告询问您是否要导航。 当我单击链接时,此警报不应出现,但不幸的是,当我单击链接时,它会出现。 还有其他选择吗? [注意:我无法更改平台代码]
var htmlElement = $('<a class="b">('+_email+')</a>').attr('href','mailto:'+_email);
我也尝试过jquery click,但是没有用
$('.b').click(function() {
window.location = $(this).attr('href');
}).click();
您需要更改执行onbeforeunload检查的代码。 通常,它是通过可以设置的标志来完成的。
您可以覆盖onbeforeunload,然后在单击链接后重新应用它。
例:
的HTML
<a class="mail" href="mailto:foo@example.com">Mail</a>
<br/>
<a href="example.com">Link</a>
的JavaScript
window.onbeforeunload = function(e) {
return 'Dialog text here.';
};
$(".mail").on("click", function () {
var _onbeforeunload = window.onbeforeunload;
window.onbeforeunload = $.noop;
window.setTimeout( function () {
window.onbeforeunload = _onbeforeunload;
},20);
});
小提琴
您只需要对代码做一个简单的更改即可。
$(document).on("click", "a.b", function(e) {
e.preventDefault();
window.open(this.href);
});
这将停止由单击链接引起的默认操作,然后使用window.open
在新窗口中打开mailto链接,而不是更改位置。 这将停止onbeforeunload
事件触发。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.