IE和火狐在radio的onchange 事件中不同
网上很多帖子给出在加一个onclick="this.blur();",就可以直接触发,为什么我加上之后还是必须要在失去焦点时才触发jquery...
网上很多帖子给出在加一个onclick="this.blur();", 就可以直接触发,为什么我加上之后还是必须要在失去焦点时才触发
jquery 展开
jquery 展开
2个回答
展开全部
您好!很高兴为您答疑。
IE和火狐在radio的onchange事件触发反应的源不一致,火狐是onchange的target也就是变成的对象来触发,后者对象触发。
IE是改变的对象,前者发生变化的控件来触发。
当使用鼠标中键或者键盘上下键时候,ie和firefox的行为有点差别 。IE在使用上下键或者鼠标中间键时会激发onchange事件,而firefox不能激发 ,需要配合回车,或者onblur事件,为了修补这两者间的 差别,可以对firefox做相应的bug hack.
示例代码(没法验证,仅供参考):
<input type="radio" onchange="dosomething();" onkeyup="this.blur();this.focus();">
如果对我们的回答存在任何疑问,欢迎继续问询。
IE和火狐在radio的onchange事件触发反应的源不一致,火狐是onchange的target也就是变成的对象来触发,后者对象触发。
IE是改变的对象,前者发生变化的控件来触发。
当使用鼠标中键或者键盘上下键时候,ie和firefox的行为有点差别 。IE在使用上下键或者鼠标中间键时会激发onchange事件,而firefox不能激发 ,需要配合回车,或者onblur事件,为了修补这两者间的 差别,可以对firefox做相应的bug hack.
示例代码(没法验证,仅供参考):
<input type="radio" onchange="dosomething();" onkeyup="this.blur();this.focus();">
如果对我们的回答存在任何疑问,欢迎继续问询。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询