views:

28

answers:

1

Problem

I'm using the base tag to resolve relative URLs to a specific point in some dynamically generated .html pages.

This works great until I try to use Window.open in javascript. Firefox resolves everything fine, but IE resolves the URL to the displayed URL.

Is there an IE work around for this?

I'd like to avoid

Combining the URL with the href in the base tag via Javascript/jQuery. (Unless it's bullet proof. Recognizing the difference between non-relative urls and relative ones, handling the existince of '/' or none '/' when combining, etc...).

Even if you have such a solution. A built in one would be preferred (a matter of formatting my relative URLs to make IE happy?, or whatever).

Example

<html>
  <head>
    <base href="http://stackoverflow.com" />
    <script type="text/javascript">
    showWindowPopupFullScreen = function(URL) {
        var pageWidth = screen.availWidth;
        var pageHeight = screen.availHeight;
        var popup = window.open(URL, 'Window', 'height=' + pageHeight + ',width=' + pageWidth + ',top=0,left=0,resizable');
        if (window.focus) {
            popup.focus();
        }
    }
    </script>
  </head>
  <body>
    <a href="javascript:showWindowPopupFullScreen('users/402706/brandon-boone')">test</a>
  </body>
</html>   
+2  A: 

No idea whether this will work - it might or might not, depending on IE's internal workings - but you could try whether this gets translated properly:

<a href="users/402706/brandon-boone" 
   onclick="showWindowPopupFullScreen(this.href)">test</a>
Pekka
Fantastic, it works. Thank you!
Brandon Boone