Перенесите в отдельный файл js

#javascript #php #html

Вопрос:

Я новичок в javascript, мне нужно скрыть фрагмент кода, который я использую в html, в отдельном файле js и использовать его на нескольких страницах сайта, как я могу это сделать?

Это код, который защищает почту от спам-ботов:

 <a href="mailto:testx@testsitex.com" onmouseover="this.href=this.href.replace(/x/g,'');">test@testsite.com</a>
 

Как я могу перенести этот код onmouseover="this.href=this.href.replace(/x/g,'');" в отдельный файл js, а затем использовать его здесь?

Комментарии:

1. Скрывать это от кого именно и почему? Помещение его в отдельный файл не скроет его, если кто-то твердо намерен его найти

Ответ №1:

вы можете добавить класс в свои ссылки электронной почты

 <a href="mailto:testx@testsitex.com" class="protected">test@testsite.com</a>
 

создайте файл js mouseover.js и добавьте в него этот код:

     document.addEventListener("mouseover", (e)=>{
      if(e.target.className === 'protected') e.target.href=e.target.href.replace(/x/g,'');
    });
 

и добавьте этот файл на каждую страницу, содержащую ссылки на электронную почту (может быть больше)

 <script type="text/javascript" src="mouseover.js"></script>
 
 document.addEventListener("mouseover", (e)=>{
  if(e.target.className === 'protected') {
  e.target.href=e.target.href.replace(/x/g,'');
  console.log(e.target.href);
  }
}); 
 <a href="mailto:testx1@testsitex.com" class="protected">test1@testsite.com</a>
<a href="mailto:testx2@testsitex.com" class="protected">test2@testsite.com</a>
<a href="mailto:testx3@testsitex.com" class="protected">test3@testsite.com</a>
<a href="mailto:testx4@testsitex.com" class="protected">test4@testsite.com</a>
<a href="mailto:testx5@testsitex.com" class="protected">test5@testsite.com</a> 

Ответ №2:

Вы можете использовать, например, функцию unicode и unescape:

 var hidden = unescape("u0048u0069u0064u0064u0065u006e u006du0065u0073u0073u0061u0067u0065u0021");