15 Days of jQuery(Day 4)---安全邮件列表
规则提到如何防止垃圾邮件:不要把你的邮件地址放到任何一个mailto:链接中. 在与垃圾邮件恶魔做斗争的过程中我们的网页设计师和程序员总结出了一些有创意的解决办法,让我们快速的看一些这些常见方法的缺点(或多或少有一些).
name [at-no-spam] website.com
问题:链接式的更方便,而且把邮件地址敲入收件人栏还有可能会出错.
联系方式
问题:你冒着这么大的风险就是因为有一个垃圾邮件借用你的帐户发送大量的垃圾邮件(除非你使用真正的安全邮件脚本).而这样就扼杀了那些只想给你发个简单邮件的用户.
javascript加密
问题:你的邮件仍然暴露在光天化日之下,即使你使用了复杂的密码技术给它带上面具.还有谁希望为了发送一封邮件而启用第三方的解密网站,反正我是不会.
藏在一种简单的形式后面 (有一个例子,但是打不开了.)http://simon.incutio.com/contact/我能想到的没有人…但是让我们看看是否我们能改进观念。
可能的解决办法:AJAX
我提供的解决方案将比目前设计师们使用的方法有如下优势:
-
易于实施
-
易于修改
-
还有一些小小的花哨的效果
-
不用第三方工具来加密邮件地址
-
没有邮件地址暴露在光天化日之下
最后我想说明一点,我认为电子邮件靠这种闪烁其词的加密手段来躲避垃圾邮件还是非常不明智的.在实践中,我认为电子邮件加密是相对安全的,但是客观事实是,电子邮件还是在html原代码里.
概念
-
1.用jQuery从服务器上把html文件内容抓下来.
-
2.把包含邮件链接的html文件放到好的容器中是一种简单的保护机制.
示例
我要示范一些例子来显示邮件链接地址,当访客点击一个按钮或者一个链接的时候,页面就会跳转到对应的那个例子里.
(说明:所谓的立即显示,我的意思是说”没有花哨的效果而尽快的显示电子邮件地址”)
代码
这里发表非商业共创使用许可,如果你希望将代码使用在你的商业产品中时,请联系我.我正在一个新的CMS for web designers中使用它.
为什么这种方式比普通的mailto链接安全?
真正的问题是垃圾邮件制造者会使用自动化软件从html源文件中寻找电子邮件链接,这种做法和google一样:使用相关链接. 他么就和我们大部分人一样懒惰.所以很难所他们不会拿个本子放在键盘旁边记下你的电子邮件地址. 请查看我提供的示例的源代码,你将不会在html里找到任何的邮件地址. 这几坚实的保证了你绝对不会收到垃圾邮件,只会从朋友或者浏览者那里收到邮件. 但是从页面中移除邮件地址,…………………
最后一点说明
先仔细看看前面三个例子,你会看到我使用了AJAX回调函数来触发slideDown() 和 show() 效果. 换句话说,我希望AJAX调用收到信息(html)时jQuery才开始slideDown() 效果.把秘密粘贴到我们简单的服务段脚本并且等待服务器返回信息.
正确的方法:
$(document).ready(function(){
$.post('mailtoInfo.php',{
pass: "secret"
},function(txt){
$('div.email').html(txt);
$('div.email').slideDown("slow");
});
});
错误的方法:
$(document).ready(function(){
$.post('mailtoInfo.php',{
pass: "secret"
},function(txt){
$('div.email').html(txt);
});
$('div.email').slideDown("slow");
});