jquery addclass id无法在列表上工作

时间:2011-07-04 07:31:49

标签: javascript jquery

请检查我的代码,

CSS

.ulData li.sel {
    background:#fff !important;
    font-size:0.8em;
    font-weight:bold;
}

JS

function switchTab(typ){
    $(".ulData li").removeClass("sel");
    $("#"+typ).addClass("sel");
    $("."+ typ +"Options").addClass("sel");
}

HTML

<ul class="ulData">
  //For Loop li
  <li title="${option.id}" id="${option.key}"><span>aaaa</span></li>
</ul>

如果我点击一个按钮,我会调用switchTab功能。在那里我添加'sel'类。 如果我添加喜欢,

$("li#"+typ).addClass("sel");

然后在Firefox中工作但不是IE版本。请帮助您了解如何将CSS应用于所有浏览器兼容性。

提前致谢

1 个答案:

答案 0 :(得分:1)

如果你的id有点,你必须逃脱它们 (我知道它们可能是模板引擎ID,但以防万一)

$("#${option.key}")无效 $("#${option\\.key}")将有效

因此,为了确保点数确定:

function switchTab(typ){
  typ = typ.replace(/\./g, "\\\\.");
  //... Your normal code
}

编辑在致电$(document).ready()时,您错过了switchTab()。你应该:

$(document).ready(function(){
    switchTab('companySection');
});

我编辑了你的小提琴http://jsfiddle.net/XyyWf/2/

希望这会有所帮助。干杯