我在我的应用程序中开发了一个系统,其中使用正则表达式提取电子邮件,然后在源代码中反转(以阻止机器人)。然后添加span类'obfuscate email‘。然后,我使用CSS将文本还原为要显示的内容,并使用Javascript确保mailto:
链接仍然有效。
我对我的解决方案非常满意,直到我意识到复制和粘贴电子邮件会将它倒放到剪贴板中。我想知道有没有什么办法可以补救?我已经在OS的Firefox3上测试过了。
有问题的页面可以在这里找到:http://www.leaklocations.com.au/contact-us/
要查看问题,只需复制并粘贴该站点上的电子邮件即可。
发布于 2009-01-15 20:34:08
我个人认为这有点过头了,但是如果你真的想混淆地址,为什么不用人类可读的方式来混淆它呢?而不是颠倒地址,让服务器输出"info at leaklocations dot com dot au“并让javascript来修复它?
如果您想坚持使用RTL CSS方法,可以尝试使用unicode字符来反转文本:\u202E我不确定这是否会有帮助,但值得一看
要查看这是如何工作的,请运行以下javascript:
alert("one \u202E two \u202E three")
它将输出"one owt three“
发布于 2009-01-15 18:16:31
您可以使用相同的Javascript来反转文本以及mailto链接。如果用户没有Javascript,那么你可以解决这个问题,或者使用一个图像。
发布于 2009-01-15 18:53:38
说真的,花这么大力气去混淆电子邮件地址值得吗?一旦电子邮件到达垃圾邮件发送者的手中,一切都结束了。最好有一个好的垃圾邮件过滤器。
而且,如果您使用JavaScript再次反转电子邮件地址,则会在页面加载时为浏览器增加额外的工作。如果JavaScript被关闭了,或者用户使用的是不支持JavaScript的移动设备,他们也就完蛋了。
https://stackoverflow.com/questions/449280
复制