{"id":122,"date":"2010-05-06T00:48:42","date_gmt":"2010-05-05T22:48:42","guid":{"rendered":"http:\/\/unckel.com\/blog\/?p=122"},"modified":"2019-12-07T22:06:30","modified_gmt":"2019-12-07T21:06:30","slug":"einfacher-spamschutz-fuer-e-mail-adressen","status":"publish","type":"post","link":"https:\/\/unckel.de\/blog\/einfacher-spamschutz-fuer-e-mail-adressen\/","title":{"rendered":"Einfacher Spamschutz f\u00fcr E-Mail-Adressen"},"content":{"rendered":"<p>Einfacher aber effektiver Spamschutz f\u00fcr E-Mail-Adressen mit Javascript und\u00a0<a href=\"http:\/\/jquery.com\/\" target=\"_blank\" rel=\"noopener\">jQuery<\/a>.<br \/>\nIst JavaScript deaktiviert, erscheint nur\u00a0<strong>info [at] domain.com<\/strong>.<\/p>\n<pre>&lt;script type=\"text\/javascript\" src=\"jquery.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\"&gt;\n\n$(function(){\n  $('.email').each(function(index) {\n    var s = $(this).text().replace(\" [at] \", \"&amp;#64;\");\n    $(this).html(\"&lt;a href=\\\"mailto:\" + s + \"\\\"&gt;\" + s + \"&lt;\/a&gt;\");\n  });\n});\n\n&lt;\/script&gt;<\/pre>\n<p>Aus:\u00a0<strong>info [at] domain.com<\/strong><br \/>\nwird:\u00a0<strong><a href=\"https:\/\/mail.google.com\/mail\/?view=cm&amp;fs=1&amp;tf=1&amp;to=info@domain.com\" target=\"_blank\" rel=\"noopener noreferrer\">info@domain.com<\/a><\/strong><\/p>\n<p>Im Quelltext die E-Mail-Adressen in span-Tags mit der Klasse &#8222;email&#8220; setzen:<br \/>\n<strong>&lt;span class=&#8220;email&#8220;&gt;info [at] domain.com&lt;\/span&gt;<\/strong><\/p>\n<p>D.h. alle Elemente mit der Klasse &#8222;email&#8220; werden in les- und klickbare E-Mail-Adressen umgewandelt.<\/p>\n<p><strong>Ohne jQuery<\/strong>\u00a0k\u00f6nnte es z.B. so aussehen:<\/p>\n<pre>&lt;script type=\"text\/javascript\"&gt;\n\nfunction convertMailAddress() {\n  var emailElements;\n  if (document.getElementsByClassName)\n    emailElements = document.getElementsByClassName(\"email\");\n  else\n    emailElements = document.getElementsByClassNameForOldies(\"email\");\n  var elementContent, replaceContent;\n  for (var i=0; i&lt;emailElements.length; i++) {\n    elementContent = emailElements[i].innerHTML;\n    replaceContent = elementContent.replace(\" [at] \", \"&amp;#64;\");\n    emailElements[i].innerHTML =\n      \"&lt;a href=\\\"mailto:\" + replaceContent + \"\\\"&gt;\" + replaceContent + \"&lt;\/a&gt;\";\n  }\n}\n\n\/\/ http:\/\/javascript.about.com\/library\/bldom08.htm\ndocument.getElementsByClassNameForOldies = function(cl) {\n  var retnode = [];\n  var myclass = new RegExp('\\\\b'+cl+'\\\\b');\n  var elem = this.getElementsByTagName('*');\n  for (var i = 0; i &lt; elem.length; i++) {\n    var classes = elem[i].className;\n    if (myclass.test(classes)) retnode.push(elem[i]);\n  }\n  return retnode;\n};\n\nwindow.onload = convertMailAddress;\n\n&lt;\/script&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Einfacher aber effektiver Spamschutz f\u00fcr E-Mail-Adressen mit Javascript und\u00a0jQuery. Ist JavaScript deaktiviert, erscheint nur\u00a0info [at] domain.com. &lt;script type=&#8220;text\/javascript&#8220; src=&#8220;jquery.js&#8220;&gt;&lt;\/script&gt; &lt;script type=&#8220;text\/javascript&#8220;&gt; $(function(){ $(&#8218;.email&#8216;).each(function(index) { var s = $(this).text().replace(&#8220; [at] &#8222;, &#8222;&amp;#64;&#8220;); $(this).html(&#8222;&lt;a href=\\&#8220;mailto:&#8220; + s + &#8222;\\&#8220;&gt;&#8220; + s + &#8222;&lt;\/a&gt;&#8220;); }); }); &lt;\/script&gt; Aus:\u00a0info [at] domain.com wird:\u00a0info@domain.com Im Quelltext die E-Mail-Adressen in span-Tags mit [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[71],"tags":[],"class_list":["post-122","post","type-post","status-publish","format-standard","hentry","category-webdesign"],"_links":{"self":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/comments?post=122"}],"version-history":[{"count":1,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/122\/revisions"}],"predecessor-version":[{"id":790,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/posts\/122\/revisions\/790"}],"wp:attachment":[{"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/media?parent=122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/categories?post=122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unckel.de\/blog\/wp-json\/wp\/v2\/tags?post=122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}