我正在<a>
用 jquery 管理一个 's 元素显示。基于一些按键事件,它附加或删除一个与提到的具有兄弟关系<input>
的类(负责管理) 。display
<a>
问题是,我有一个使用 CSS 的选择器+
。并且由于某种原因,在 Chrome 中(我不确定其他浏览器,因为我没有测试过),当兄弟有类时它不会display:block
是元素。<a>
<a>
HTML
<div class="cont">
<input class="myInput"/>
<label>S</label>
<a>X</a>
</div>
CSS
.cont {
position: relative;
}
a {
position: absolute;
left: 117px;
top: 3px;
display: none;
}
label {
position: absolute;
left: 140px;
top: 3px;
}
.has_typed + label + a {
display: block;
}
脚本
$("input").on('keyup', function(){
var thiss = $(this);
if (thiss.val() != 0 && !(thiss.hasClass('has_typed'))) {
thiss.addClass('has_typed');
}
else if (thiss.val() == 0) {
thiss.removeClass('has_typed');
}
});
在这里小提琴:http: //jsfiddle.net/aF4qt/1/