是否有更快更优化的方法来实现这一目标?
if (window.location.href.indexOf('/search/?') >= 0) {
if ($.cookie("Layout") == "Poster") {
$("link").attr("href", "../css/list.css");
} else if ($.cookie("Layout") == "Poster") {
$("link:first").attr("href", "css/list.css");
}
}
if (window.location.href.indexOf('/search/?') >= 0) {
if ($.cookie("Layout") == "Description") {
$("link").attr("href", "../css/desc.css");
} else if ($.cookie("Layout") == "Description") {
$("link:first").attr("href", "css/desc.css");
}
}
答案 0 :(得分:0)
我发现你实际上在else if
子句中测试与原始条件相同的东西。这是多余的。 else if
条件将永远不会执行,因为您处于同一条件表达式的else
子句中(让我自己只是考虑它而感到困惑)..
if ($.cookie("Layout") == "Poster") {
...
}else if ($.cookie("Layout") == "Poster") { ... }
那应该对你说错了......第二个if语句将永远不会执行......
您可能想要做的是使用switch
语句。类似的东西 -
if (window.location.href.indexOf('/search/?') >= 0) {
switch($.cookie("Layout")){
case "Layout" :
// behavior for "Layout"
break;
case "Description" :
// behavior for "Description"
break;
default :
// behavior for unknown $.cookie("Layout") value
break;
}
}