Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE7输入问题_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript IE7输入问题

Javascript IE7输入问题,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一些输入,我在keyup上进行验证,它工作得非常好,除了在IE7中,每次击键都会缩小输入 我已经调试了代码,发现是jQUery.addClass/.removeClass造成了这种效果 这只是一个普通的旧输入,没有什么特别的 有什么想法吗 $('input#myId').bind('keyup blur',function(){ var _this = $(this); if(_this.val().match(/^[0-9()\-\+\

我有一些输入,我在keyup上进行验证,它工作得非常好,除了在IE7中,每次击键都会缩小输入

我已经调试了代码,发现是jQUery.addClass/.removeClass造成了这种效果

这只是一个普通的旧输入,没有什么特别的

有什么想法吗

$('input#myId').bind('keyup blur',function(){
        var _this = $(this);          
        if(_this.val().match(/^[0-9()\-\+\ ]+$/i)== null){
            _this.addClass('errorColor');               
        }else{
            _this.removeClass('errorColor');               
        }
});
编辑:

我终于找到了答案!原来是boxsizing.htc脚本。此脚本动态转换要包含在元素高度和宽度中的填充、边距和边框。每次我输入时,它都试图应用触发onupdate事件的类并刷新元素大小。在我的CSS中,我有点懒惰,并且将重要声明添加到了errorClass规则中,纯粹是为了确保它具有最高的可能特异性。正是这种重要性揭示了Boxsize代码中的一个小错误,因为它随后会递增地计算边框宽度(或者更简单地说,它不会从以前的计算中删除边框宽度)


我会尽快找到一个例子。

也许jQuery与IE7中的问题无关。问题很可能是由于与
errorColor
类相关的CSS造成的。

如果没有更多数据,我最好的猜测是:

a) 该类删除失败,并在元素上不断累积


b) 这是IE7 100%宽度的怪异之处,请尝试99%或自动,看看是否有帮助。

这是boxsizing.htc脚本。不要使用这个工具!此脚本的重要声明,因为它在计算刷新时会增加值。。。因此,收缩输入

你能显示与你正在添加和删除的类相关的css吗?也可以做一个小提琴,这样我们就可以看到这种行为。如果你在
errorColor
类中设置了
高度
,那么ie7就不起作用了。使用
padding
代替。我想,猜测应该是一个注释:)是否有一个页面?我并不总是知道在各种情况下人们应该在这个网站上做什么。我回答这个问题的主要原因是提问者没有提供足够的信息,除了有根据的猜测。其他人则呼吁通过评论获得更多信息,但都没有实现。我之前的答案,以“大概……”开头的答案其实没有什么不同。在某种意义上,大多数问题不是都是猜测吗?人们试图提供一个解决方案(通常失败),但只选择了一个。Serhiy,有根据的猜测总比没有好!