Я видел утверждения, что некоторые почтовые службы помечают письма с javascript как спам. Но я не видел упоминаний о том, что какой-либо разумный сервис просто по желанию полностью очистит любой встроенный javascript, оставив html на месте. Я ищу не там или эта функция на самом деле еще нигде не реализована?
решение1
Gmail удаляет любой контент между <script>
тегами перед отображением сообщения. Если в письме есть теги скриптов, это не значит, что Google автоматически отметит его как спам, но это может быть одним из факторов, увеличивающих вероятность.
Большинство провайдеров веб-почты и почтовых клиентов будут (или должны) делать это для предотвращения атак xss (межсайтовый скриптинг). Подробнее об этомздесь.
Поэтому нет смысла отправлять электронные письма, содержащие JavaScript (даже если он выполняет какую-то полезную функцию), поскольку он почти наверняка будет заблокирован при просмотре сообщения и может способствовать его пометке как спам.
решение2
Я думаю, что Gmail настроен таким образом, что javascript, встроенный в письмо, никогда не будет выполнен, поэтому нет необходимости его удалять. Я не совсем уверен, как это работает, но вы можете убедиться в этом сами, встроив
<script type="text/javascript">
alert(‘hello!’);
</script>
в электронном письме и отправив его на свой аккаунт Gmail, вы не увидите никаких всплывающих диалоговых окон при открытии письма.