【Javascript】jQuery change事件和window.history.pushstate的浏览器兼容问题

    一、jQuery change事件在IE8下不完全生效

    症状:当文本框有输入历史时,选择输入历史的值,不会触发绑定的事件

    处理方法:改用focus和blur来模拟change事件



        // 以下的compute方法为文本框值发生变化的处理函数
        var bindChangeEvent = function(id) {
            $(id).focus(function(){
                $(this).attr("data-origin", $(this).val());
            }).blur(function(){
                var oldVal=($(this).attr("data-origin"));
                var newVal=($(this).val());
                if (oldVal!=newVal) {
                    compute();
                }
            }).bind('keyup', compute);
        };
    

    二、window.history.pushstate在IE8、IE9中不支持

    使用History.js插件模拟https://github.com/balupton/History.js/



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【Javascript】jQuery change事件和window.history.pushstate的浏览器兼容问题
    标签:
    分享:

还没有人抢沙发呢~

无觅相关文章插件,快速提升流量