tl; dr
Ẩn địa chỉ email khỏi bot mà không cần sử dụng tập lệnh và duy trì mailto:
chức năng. Phương pháp cũng phải hỗ trợ trình đọc màn hình.
Tóm lược
Làm xáo trộn email mà không cần sử dụng tập lệnh hoặc biểu mẫu liên hệ
Địa chỉ email cần hiển thị hoàn toàn với người xem và duy trì
mailto:
chức năngĐịa chỉ Email không được ở dạng hình ảnh .
Địa chỉ email phải được ẩn "hoàn toàn" khỏi trình thu thập thông tin thư rác và chương trình thư rác và bất kỳ loại trình thu thập thông tin nào khác
Hiệu quả mong muốn:
Không có kịch bản , xin vui lòng. Không có tập lệnh nào được sử dụng trong dự án và tôi muốn giữ nguyên như vậy .
Địa chỉ email được hiển thị trên trang hoặc có thể dễ dàng hiển thị sau một số loại tương tác của người dùng, như mở một phương thức.
Người dùng có thể nhấp vào địa chỉ email mà từ đó sẽ kích hoạt
mailto:
chức năng.Nhấp vào email sẽ mở ứng dụng email của người dùng.
Nói cách khác,
mailto:
chức năng phải hoạt động.Địa chỉ email trong không hiển thị hoặc không được xác định là địa chỉ email đối với bot (Điều này bao gồm nguồn trang)
Tôi không có hộp thư đến chứa đầy thư rác
Điều gì KHÔNG hoạt động
Thêm biểu mẫu liên hệ - hoặc bất kỳ thứ gì tương tự - thay vì địa chỉ email
Tôi ghét các hình thức liên hệ . Tôi hiếm khi điền vào biểu mẫu liên hệ. Nếu không có địa chỉ email, tôi sẽ tìm số điện thoại, và nếu không có, tôi bắt đầu tìm kiếm một dịch vụ thay thế. Tôi sẽ chỉ điền vào một biểu mẫu liên hệ nếu tôi thực sự phải làm.
Thay thế địa chỉ bằng hình ảnh của địa chỉ
Điều này tạo ra một bất lợi LỚN đối với người sử dụng trình đọc màn hình ( hãy nhớ đến người khiếm thị trong các dự án tương lai của bạn )
Nó cũng loại bỏ các
mailto:
chức năng trừ khi bạn thực hiện các nhấp chuột được hình ảnh và sau đó thêm cácmailto:
chức năng như cáchref
bạn đã liên kết, nhưng điều đó đánh bại mục đích và bây giờ là email được hiển thị cho chương trình.
Những gì có thể hoạt động:
Sử dụng thông minh
pseudo-elements
trongCSS
Các giải pháp sử dụng
base64
mã hóaChia nhỏ địa chỉ email và chia nhỏ các phần trên tài liệu sau đó đặt chúng lại với nhau theo một phương thức khi người dùng nhấp vào một nút (Điều này có thể liên quan đến nhiều
CSS
lớp và việc sử dụnganchor tags
)Thay thế
html
các thuộc tính quaCSS
@MortezaAsadi đã khéo léo đưa ra khả năng trong các nhận xét bên dưới. Đây là liên kết đến đầy đủ - Bài viết từ năm 2012:
Điều gì sẽ xảy ra nếu chúng ta có thể sử dụng CSS để thay đổi các thuộc tính HTML?
Các giải pháp sáng tạo khác nằm ngoài phạm vi hiểu biết của tôi.
Câu hỏi / bản sửa lỗi tương tự
(Đây là một bản sửa lỗi tuyệt vời do Joe Maller đề xuất, nó hoạt động tốt nhưng dựa trên kịch bản . Đây là những gì nó trông như thế nào;
<SCRIPT TYPE="text/javascript">
emailE = 'emailserver.com'
emailE = ('yourname' + '@' + emailE)
document.write('<A href="mailto:' + emailE + '">' + emailE + '</a>')
</script>
<NOSCRIPT>
Email address protected by JavaScript
</NOSCRIPT>
Tìm kiếm một hàm obfuscator địa chỉ email chỉ php
(Một giải pháp Clever sử dụng cả hai
PHP
vàCSS
để đảo ngược email trước tiên bằng PHP, sau đó đảo ngược lại bằng CSS) Một giải pháp rất hứa hẹn Hoạt động tuyệt vời! Nhưng nó quá dễ dàng để giải quyết .Những ngày này có đáng để làm xáo trộn các địa chỉ email trên web không?
(Sửa lỗi Javascript)
Cách tốt nhất để làm xáo trộn địa chỉ e-mail trên một trang web?
Câu trả lời đã chọn hoạt động . Nó thực sự hoạt động rất tốt. Nó liên quan đến việc mã hóa email dưới dạng
html entities
. Nó có thể được cải thiện?Đây là những gì nó trông như thế nào;
<A HREF="mailto: yourname@domain.com"> yourname@domain.com </A>
Chức năng xáo trộn địa chỉ e-mail có thực sự hoạt động không?
(Câu trả lời được chọn cho câu hỏi SuperUser này rất hay và nó trình bày một nghiên cứu về lượng thư rác nhận được bằng cách sử dụng các phương pháp xáo trộn khác nhau.
Có vẻ như thao tác với địa chỉ email
CSS
để làm cho nórtl
hoạt động. Đây là phương pháp tương tự được sử dụng trong câu hỏi đầu tiên tôi liên kết đến trong phần này.Tôi không chắc việc thêm
mailto:
chức năng vào bản sửa lỗi sẽ có những ảnh hưởng gì đến kết quả.Ngoài ra còn có nhiều câu hỏi khác trên SO đều có câu trả lời tương tự. Tôi đã không tìm thấy bất cứ điều gì phù hợp với hiệu ứng mong muốn của tôi
Câu hỏi:
Liệu có thể tăng hiệu quả (tức là càng ít spam càng tốt) của các phương pháp làm xáo trộn email ở trên bằng cách kết hợp hai hoặc nhiều bản sửa lỗi (hoặc thậm chí thêm các bản sửa lỗi mới) trong khi:
A- Duy trì mailto:
chức năng; và
B- Hỗ trợ trình đọc màn hình
Biên tập:
Nhiều câu trả lời và nhận xét bên dưới đặt ra một câu hỏi rất hay trong khi chỉ ra rằng không thể làm điều này mà không có một số loạijs
Câu hỏi được hỏi / ngụ ý là:
Tại sao không sử dụng
js
?
Câu trả lời là tôi bị dị ứng với js
Đùa sang một bên,
Ba lý do chính tôi hỏi câu hỏi này là:
Biểu mẫu liên hệ ngày càng được chấp nhận nhiều hơn để thay thế cho việc cung cấp địa chỉ email - điều mà chúng không nên làm.
Nếu nó có thể được thực hiện mà không cần script thì nó nên được thực hiện mà không cần script.
Sự tò mò: (vì thực tế tôi đang sử dụng một trong các
js
bản sửa lỗi hiện tại) Tôi muốn xem liệu thảo luận về vấn đề này có dẫn đến cách làm tốt hơn không.
mailto:
chức năng và bạn không sẵn sàng sử dụng Javascript, thì điều đó là không thể.