我不能完全找出解决这个问题的最佳方法。我有一个条件,根据是否存在选择器来设置Cookie 。代码中还有其他地方,如果 选择符存在,我可以做类似的事情。如果选择器存在,我可以将“nba”或“nba-”(注意破折号)添加到页面上的各种属性 。我试图删除尽可能多的代码,因为有大约五个其他地方 我有类似的地方,我添加其他属性。我也觉得自己有一个更好的方式 处理这个不必此写一吨的时候:jQuery - 如果选择器存在,添加属性和前缀值
if($(".userLocation").length > 0){
我敲我的脑袋上如何凝聚这一点,但可能不知道这一点。请包括代码示例 我学到最好的方式。
if($(".userLocation").length > 0){
var user_cookie = {
name: 'nba-user-profile',
options: {
path: '/',
expires: 365
}
};
} else {
var user_cookie = {
name: 'user-profile',
options: {
path: '/',
expires: 365
}
};
}
if($(".userLocation").length > 0){
$('header').attr("href","#nba-city");
$('header').attr("href","#nba-state");
} else {
$('header').attr("href","#city");
$('header').attr("href","#state");
}
if($(".userLocation").length > 0){
$('header').attr("title","#nbacity");
$('header').attr("title","#nbastate");
} else {
$('header').attr("title","#city");
$('header').attr("title","#state");
}
我没有得到该问题。如果你想避免重复if(condition)创建一个布尔函数,或者将布尔值存储在一个变量中,那么你在使用这些函数时如果使用了相同的函数 – Alessio
为什么不写这个条件一次并更改所有的属性在一个块中。 – Krishna