Keydown issue

When value reaches limit, data is not allowed but if user selects the data using shift key, still he is not allowed to enter value

HTML

<script src="http://knockoutjs.com/downloads/knockout-3.2.0.js"></script>
<input type="number" id="txtYear" maxLength="4">

JavaScript

$(document).ready(function () {
    $("#txtYear").on("keydown", function (event) {
        var element = event.target;
        var keyCode = event.keyCode ? event.keyCode : event.which;
        console.log( keyCode,element.value.length, element.maxLength, element.value.length >= element.maxlength-1 && keyCode > 46)
        if (parseInt(element.value.length) >= parseInt(element.maxLength) && keyCode > 46) {
            event.preventDefault();
            return false;
        } 
        else return true;
    });
})