Internet explorer 8 Jquery函数单击事件未在IE8中触发
有人知道为什么在本例中,点击事件不只是在IE8中触发的吗?基本上,点击后的css样式(Internet explorer 8 Jquery函数单击事件未在IE8中触发,internet-explorer-8,jquery,Internet Explorer 8,Jquery,有人知道为什么在本例中,点击事件不只是在IE8中触发的吗?基本上,点击后的css样式(.zui act)应该改变标签的背景色 阿尔法 布拉沃河 沙利 $.radio=功能(e){ var a=$('input:radio').filter(函数(索引){return$(this.attr('name')==e}); a、 隐藏(); a、 同级('label').addClass('zui-btn'); a、 单击(函数(){ var f=$(this.attr('id'); $('la
.zui act
)应该改变标签的背景色
阿尔法
布拉沃河
沙利
$.radio=功能(e){
var a=$('input:radio').filter(函数(索引){return$(this.attr('name')==e});
a、 隐藏();
a、 同级('label').addClass('zui-btn');
a、 单击(函数(){
var f=$(this.attr('id');
$('label').removeClass('zui-act').filter(函数(索引){
返回$(this.attr('for')==f
}).addClass(“zui-act”);
});
}
$(文档).ready(函数(e){
$收音机('a');
});
将单击事件更改为更改,它应该可以工作。您很可能在兼容模式下运行,该模式中有一个bug
既然可以让选择器处理名称,为什么还要使用过滤器呢
var myName = "a";
var myRadios = $('input[name="' + myName +'"]');
我唯一的猜测是IE8不会触发隐藏元素上的事件。我想这是有道理的。您可以采用jQuery UI buttonset采取的方法,并将单选按钮移出屏幕:
然后将其添加到$.radio
方法中,以代替a.hide()
:
谢谢,使用name效果更好,但正如Ryan提到的,change
不起作用,而且我不在compatibility modeLOL中,测试时我在IE9中运行它,而不是在IE8中运行它。我以为我改变了模式。:)
var myName = "a";
var myRadios = $('input[name="' + myName +'"]');
.zui-radio {
position:absolute;
left:-9999px;
}
a.addClass('zui-radio');