I just had this task at my work which generates a documentation for a given database object (Table, View, Stored Procedure and Function). The output documentation is in HTML format. There's basically no problems on running HTML locally (double click on the Windows Explorer). I have decided to place some JavaScript routines to enhance the UI of the HTML documentation. And thus the problem of running JavaScript locally arose.
I mean, you can easily run an HTML with JavaScript by just accessing it directly of Windows Explorer, what I didn't like was IE prompting the user to enable or disable the JavaScript contained in the local HTML in which this doesn't occur when the HTML page is deployed on a web server.
I know it is a security feature of IE, but I really want to be able to execute my HTML just like it is being executed on a web server (no more JavaScript prompts). The first solution that I got was pretty quite simple. Just rename the HTML file to HTA. It seems that HTA files are local HTML files. It seems kind of the solution that I want. But the problem is, when a user generates multiple HTA's and then decides to deploy it to the web, he would have to rename all files to HTML again (which is quite frustrating). So I've searched again of another way to solve the problem. That's when I found the "Mark of The Web".
Here's MSDN's definition of MOTW:
The Mark of the Web (MOTW) is a feature of Windows Internet Explorer that enhances security by enabling Internet Explorer to force Web pages to run in the security zone of the location the page was saved from
It's clearly the one that I was looking for. Insert something in the Tag and voila! Problem solved!
<!-- saved from url=(0014)about:internet -->
That tag should appear after the <!DOCTYPE tag in the html. If you place that tag, it means that the security being applied to your page is the same security zone applied to the supplied URL of the tag. With this, the JavaScript prompting would be gone and your HTML acts as if it is being executed within a Web Server.