Search code examples
javascriptbrowserhta

How can I open a link in the default web browser from an HTA?


I'm working on an application that is implemented as an HTA. I have a series of links that I would like to have open in the system's default web browser. Using <a href="url" target="_blank"> opens the link in IE regardless of the default browser.

Is there a way to use the default browser? Using JavaScript is an option.


Solution

  • Create a shell and attempt to run a URL.

    This works for me (save as whatever.hta and execute it) on my system. Clicking on the button opens Google in Firefox:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html lang="en">
    <head>
      <title>HTA Test</title>
      <hta:application applicationname="HTA Test" scroll="yes" singleinstance="yes">
      <script type="text/javascript">
      function openURL()
      {
          var shell = new ActiveXObject("WScript.Shell");
          shell.run("http://www.google.com");
      }
      </script>
    </head>
    <body>
    
    <input type="button" onclick="openURL()" value="Open Google">
    
    </body>
    </html>