Sending html email having JQuery scripts

2019-04-25 07:28发布

问题:

I'm using PHP to send html emails. I've tried to import css files inside the email, and it works fine.

<link href="http://www.mywebsite.com/css/mail_styles.css" 
      type="text/css" rel="stylesheet" />

But i want the email to look stylish with some JQuery tricks, so i tried to import the JQuery library inside the email to add some scripts, but even gmail couldn't read the library.

<script type="text/javascript" 
        src="http://www.mywebsite.com/scripts/jquery.js"></script>

So is there a way to import JavaScript libraries inside html emails ?

Thanks ...

回答1:

Most email clients either disable email JavaScript entirely, or only allow a subset of it, due to security reasons. Web-based clients such as Gmail are likely to fall into the former category.

You can try embedding the script file itself directly into the email, but overall using JS in emails is a bad idea that's best avoided.

edit

Remember, email is a static content-delivery mechanism. As another commentator noted, if you want to send someone dynamic content, email them a link to your DHTML webpage.



回答2:

@Karim79, I'm not convinced that the answer is so clear cut as you suggest.

It all depends on the environment used to read the email, and whether that environemnt supports javascript or not. Admittedly, I suspect that most email readers would be averse to supporting javascript, in order to avoid viruses and malware, but there is no absolute reason why this couldn't be done.

Having said that, the unpredictable level of support offered by readers would probably mean that you shouldn't rely on the script running correctly (if at all), so you'd probably want to take a 'graceful degradation' approach.



回答3:

Using Javascript in emails would be a security problem. And something not desirable. If you want send some fancy page to the user, why not send him the link to a page?



回答4:

If I recall you can only use in-line.

BUT most email clients (especially web based) will genearlly not allow JS of any sorts.

I have been advising and creating html newlstters etc for people for years now and general rule - don't use JS.

A good guide for html emails is: http://www.anandgraves.com/html-email-guide#javascript



回答5:

I would never consider using JavaScript in an email, most likely the majority of your users' email clients wouldn't support it anyway so it's not worth the effor or that an overzealous e-mail filter might reject your messages.