Does event.stopPropagation in a checkbox click event prevent the change event from firing in IE8 and earlier?
<p>It appears that <code>event.stopPropagation()</code> in a checkbox <code>click</code> event prevents the associated <code>change</code> event from firing in IE before IE9.</p>

<p>(The following code is in <a href="http://jsfiddle.net/UftSd/" rel="nofollow">jsFiddle</a>)</p>

<pre><code>&lt;input type="checkbox" value="Y" checked&gt;Test
&lt;div id="output"&gt;Logging...&lt;/div&gt;
</code></pre>

<p>With the following jquery block the change event <em>doesn't</em> fire in IE8 and earlier but it <em>does</em> fire in IE9 (and Chrome):</p>

<pre><code>$(document).ready(function() {

    $("input").click(function(event) {
        event.stopPropagation();
        $("#output").append("&lt;pre&gt;click&lt;/pre&gt;");
    });

    $("input").change(function(event) {
        $("#output").append("&lt;pre&gt;change&lt;/pre&gt;");
    });

});
</code></pre>

<p>Chrome and IE9 give:</p>

<pre><code>Logging...
change
click
change
click
change
click
</code></pre>

<p>Whereas IE8 and earlier gives:</p>

<pre><code>Logging...
click
click
click
</code></pre>

<p>However, if I put specific 'before IE9' handling then all works as expected:</p>

<p>With the following jquery block:</p>

<pre><code>$(document).ready(function() {

    $("input").click(function(event) {

        event.stopPropagation();

        $("#output").append("&lt;pre&gt;click&lt;/pre&gt;");

        // fix event bubbling before IE9
        if ($.browser.msie) {
            if (parseInt($.browser.version, 10) &lt; 9) {
                $(this).trigger("change");
            }
        }

    });

    $("input").change(function(event) {
        $("#output").append("&lt;pre&gt;change&lt;/pre&gt;");
    });

});
</code></pre>

<p>Is this expected behaviour?</p>
