<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" >

  <title>Erik L. Arneson — Writer and Software Developer</title>
  <subtitle>Erik L. Arneson is a freelance writer and software developer with WordPress experience. He is located in Portland, Oregon.</subtitle>
  <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator>
  <link href="https://arnesonium.com/feeds/windows.xml" rel="self" type="application/atom+xml" />
  <link href="https://arnesonium.com/" rel="alternate" type="text/html" />
  <updated>2026-06-18T15:03:10+00:00</updated>
  <id>https://arnesonium.com/feeds/windows.xml</id>
  <author>
    <name>Erik L. Arneson</name>
  </author>
      <entry>
        
        <title>How to Enable XPath in Internet Explorer</title>
        <author>
          <name>Erik L. Arneson</name>
        </author>        
        <link href="https://arnesonium.com/2015/02/how-to-enable-xpath-in-internet-explorer/" rel="alternate" type="text/html" title="How to Enable XPath in Internet Explorer" />
        <updated>2015-02-12T17:13:32+00:00</updated>
        <id>https://arnesonium.com/2015/02/how-to-enable-xpath-in-internet-explorer</id>
          <category term="epub" />
        
          <category term="internet-explorer" />
        
          <category term="javascript" />
        
          <category term="programming" />
        
          <category term="publishing" />
        
          <category term="web-development" />
        
          <category term="windows" />
        <content type="html" xml:base="https://arnesonium.com/2015/02/how-to-enable-xpath-in-internet-explorer/">&lt;p&gt;Yesterday, I shared a little bit about using a virtual machine to &lt;a href=&quot;http://arnesonium.com/2015/02/test-internet-explorer-without-booting-windows/&quot; title=&quot;How to Test Your Frontend Against Internet Explorer Without Booting Windows&quot;&gt;test frontend code under Internet Explorer (IE)&lt;/a&gt;. My goal was to use &lt;a href=&quot;https://code.google.com/p/wicked-good-xpath/&quot; title=&quot;Wicked Good XPath&quot; target=&quot;_blank&quot;&gt;Wicked Good XPath&lt;/a&gt; to add the proper XPath features to IE so that EPUB.js would work correctly, thus making the &lt;a href=&quot;http://arnesonium.com/2015/01/philalethes-e-bulletin-online-reader/&quot; title=&quot;Philalethes E-Bulletin Online Reader&quot;&gt;&lt;em&gt;Philalethes E-Bulletin&lt;/em&gt; Online Reader&lt;/a&gt; work on all major browsers.
&lt;!--more--&gt;&lt;/p&gt;

&lt;p&gt;Well, I’d been thinking about this problem for a while, but had delayed working on it because I just didn’t want to fiddle with IE. While I’d been thinking about it, the &lt;a href=&quot;https://github.com/futurepress/epub.js/commit/f2fa7497939e5876ff6676cf8de34d7284498495#diff-04c6e90faac2675aa89e2176d2eec7d8&quot; target=&quot;_blank&quot;&gt;EPUB.js instructions were updated&lt;/a&gt; with IE-specific steps. I didn’t have to look far.&lt;/p&gt;

&lt;p&gt;After loading &lt;code&gt;wgxpath.install.js&lt;/code&gt; in the header, I just had to add this bit of JavaScript before anything important happened:&lt;/p&gt;

&lt;pre lang=&quot;javascript&quot; line=&quot;1&quot;&gt;
// Internet Explorer workaround.
if (!window.XPathResult) {
    EPUBJS.Hooks.register(&quot;beforeChapterDisplay&quot;).wgxpath = function(callback, renderer){
       wgxpath.install(renderer.render.window);

       if (callback) callback();
    };
    wgxpath.install(window);
}
&lt;/pre&gt;

&lt;p&gt;You can see on line 2 that I test for &lt;code&gt;window.XPathResult&lt;/code&gt; instead of looking for a user agent or anything like that. That’s because it’s not really IE I’m interested in detecting. I want to find out if XPath is both available and somewhat standard. User agents are unreliable. &lt;a href=&quot;http://learn.jquery.com/code-organization/feature-browser-detection/&quot; target=&quot;_blank&quot;&gt;Always test for feature availability instead!&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://arnesonium.com/wp-content/uploads/2015/02/Screenshot-from-2015-02-11-133823.png&quot; alt=&quot;Recent web browser usage&quot; width=&quot;350&quot; height=&quot;130&quot; class=&quot;alignright size-full wp-image-279&quot; /&gt;The results are good enough for now: the Online Reader works in IE, but it’s not perfect. The cover image doesn’t load full-size and fonts don’t seem to be loading correctly. IE users account for only 10% of the traffic on the website, so obviously I need to work on the EPUB.js cross-browser support. For now, though, it works. And it looks great on Chrome, Safari, and Firefox.&lt;/p&gt;</content>
      </entry>
    
      <entry>
        
        <title>How to Test Your Frontend Against Internet Explorer Without Booting Windows</title>
        <author>
          <name>Erik L. Arneson</name>
        </author>        
        <link href="https://arnesonium.com/2015/02/test-internet-explorer-without-booting-windows/" rel="alternate" type="text/html" title="How to Test Your Frontend Against Internet Explorer Without Booting Windows" />
        <updated>2015-02-11T19:15:26+00:00</updated>
        <id>https://arnesonium.com/2015/02/test-internet-explorer-without-booting-windows</id>
          <category term="debugging" />
        
          <category term="epub" />
        
          <category term="internet-explorer" />
        
          <category term="javascript" />
        
          <category term="programming" />
        
          <category term="testing" />
        
          <category term="web-development" />
        
          <category term="windows" />
        <content type="html" xml:base="https://arnesonium.com/2015/02/test-internet-explorer-without-booting-windows/">&lt;p&gt;Internet Explorer (IE) has been frustrating me. I want to use stronger words than that, but it would be unprofessional.
&lt;!--more--&gt;&lt;/p&gt;

&lt;p&gt;I recently launched the &lt;a href=&quot;http://arnesonium.com/2015/01/philalethes-e-bulletin-online-reader/&quot; title=&quot;Philalethes E-Bulletin Online Reader&quot;&gt;&lt;em&gt;Philalethes E-Bulletin&lt;/em&gt; Online Reader&lt;/a&gt;, which uses EPUB.js and an implementation of XPath that, for some strange reason, isn’t available in IE. I found a few solutions which would work, but all of them require testing in IE. Of course.&lt;/p&gt;

&lt;p&gt;This seems like it wouldn’t be a problem, except that I run Linux all the time. All of my work happens on the Linux side of things, so booting into Windows just to run IE for one tiny bug fix is an inconvenience and a chore.
&lt;!--more--&gt;&lt;/p&gt;

&lt;p&gt;A friend of mine pointed me to &lt;a href=&quot;https://www.modern.ie/&quot; title=&quot;modern.IE: Virtual Machines for running Internet Explorer&quot; target=&quot;_blank&quot;&gt;modern.IE&lt;/a&gt;. Microsoft has graciously released virtual machines usable under MacOS and Linux for running IE and testing. Be warned, however, that the license only lasts 90 days.&lt;/p&gt;

&lt;p&gt;I downloaded the 3.5GB virtual machine image and loaded it up in VirtualBox. This might be unusual, but I don’t do a lot of work with virtual machines on my development box. I was immediately greeted with this:
[caption id=”attachment_269” align=”aligncenter” width=”530”]&lt;img src=&quot;http://arnesonium.com/wp-content/uploads/2015/02/Screenshot-from-2015-02-11-094245.png&quot; alt=&quot;Don&amp;#039;t worry, the loading time was a lie. It only took 5 minutes.&quot; width=&quot;530&quot; height=&quot;423&quot; class=&quot;size-full wp-image-269&quot; /&gt; Don’t worry, the loading time was a lie. It only took 5 minutes.[/caption]&lt;/p&gt;

&lt;p&gt;This solution is not the best for my setup. My computer is getting long in the tooth, so VirtualBox runs neither quickly nor smoothly. However, in this situation, I only needed to test a few lines of code, so it worked.&lt;/p&gt;

&lt;p&gt;In my next blog post, which should be coming out shortly, I’ll talk about how I got the &lt;em&gt;Philalethes E-Bulletin&lt;/em&gt; Online Reader working for IE.&lt;/p&gt;</content>
      </entry>
    
</feed>
