Очень надоели спам письма на ваш почтовый ящик?
Давно хотел написать JS класс для формирования email ссылок для защиты от всякого рода спам ботов, которые собирают email адреса с сайтов. Посидев и почитав что пишут люди создал такой простенький класс который формирует mailto ссылку вида:
<a href="mailto:test@testmail.ru" title="Какая-то подсказка">test@test.mail.ru</a>
Вот непосредственно сам код класса:
var email = {login:'', server:'', title:'', errMess: 'Ошибка: не указан логин или сервер',
get url() {
return 'mailto:'+this.mailAdress;
},
get mailAdress() {
return this.login + '@' + this.server
},
get emailLink() {
if (this.login=='' || this.server=='') {
return this.errMess
} else {
var titleStr = '';
if (this.title!='') {
titleStr =' title="'+this.title+'"';
}
return '<a'+titleStr+' href="'+this.url+'">'+this.mailAdress+'</a>'
}
},
get print(){
document.write(this.emailLink);
}
}
Для его использования необходимо подключить данный класс в ваш JS код и там где нужно вывести защищенную от спам ботов ссылку ввести следующее:
<script type="text/javascript">
email.title= "Отправить сообщение на Email";
email.errMess= "Ошибка!!!";
email.login = 'test';
email.server = 'testmail.ru';
email.print;
</script>
, где errMess это то, что будет выводиться если мы забыли указать логин и email (строчки с errMess и title необязательны, они заданы по умолчанию)
На выходе получаем следующий HTML код:
<a href="mailto:office@fotobik.ru" title="Отправить сообщение на Email">office@fotobik.ru</a>
Плюсы
- Простота
- Скорость формирования
- Малый объем кода
Минусы данного метода формирования ссылки:
- Неработает с отключенным JavsScript
P.S. Данный класс можно расширять такими функциями как допустим проверка правильности email'a, использовать его совместно с jQuery, но это уже другая история…