我有一些简单的JavaScript来实现样式更改:
sel=document.getElementById('my_id');
sel.className=sel.className.replace(/item-[1-9]-selected/,'item-1-selected');
返回false;
这适用于最新版本的FF、Opera和IE,但不适用于最新版本的Chrome和Safari
它影响到两个后代,他们碰巧是兄弟姐妹。第一个兄弟更新,但第二个兄弟不更新。第二个元素的子元素也有焦点并包含<;a>标记,在onclick属性中包含上述代码
在Chrome“开发者工具”窗口中,如果我轻推(例如,取消选中&;检查)any元素的any属性,则第二个同级更新为正确的样式
是否有一种变通方法可以轻松地通过编程“推动”WebKit做正确的事情
我发现一些复杂的建议和许多简单的建议都不起作用,但瓦西里·丁科夫(Vasil Dinkov)对其中一个建议的评论提供了一个简单的解决方案,强制重新绘制/重新绘制效果良好:
sel.style.display='none';
选择偏离视线;//无需将其存储在任何地方,参考就足够了
sel.style.display='';
如果它适用于“块”以外的样式,我会让其他人评论
谢谢,瓦西里