Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击即可更改li元素的背景_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 单击即可更改li元素的背景

Javascript 单击即可更改li元素的背景,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想做的事情是,当用户单击链接时,背景应该改变以指示用户单击了哪个链接。我正试图用jQuery实现这一点: $('.menuLink')。单击(函数(){ var img=$(this.find('img'); var id=$(this.attr('id'); $(“#”+id).addClass('activeLink'); console.log(id); }); .menuLinks li{ 颜色:#ffffff; 浮动:左; 左边距:2倍; 宽度:115px; 高度:60px; 背景

我想做的事情是,当用户单击链接时,背景应该改变以指示用户单击了哪个链接。我正试图用jQuery实现这一点:

$('.menuLink')。单击(函数(){
var img=$(this.find('img');
var id=$(this.attr('id');
$(“#”+id).addClass('activeLink');
console.log(id);
});
.menuLinks li{
颜色:#ffffff;
浮动:左;
左边距:2倍;
宽度:115px;
高度:60px;
背景色:#004f80;
文本对齐:居中;
字体大小:13px;
字体大小:正常;
字体风格:普通;
字体拉伸:正常;
}
李梅努林克斯:停下来{
背景色:#006eb3;
光标:指针;
}
梅努林克斯先生{
颜色:#fff;
}
.activeLink{
颜色:#004f80;
背景色:#fff;
}

    链接1
  • Lnk2
  • 链接3 链接4 链接5
问题是因为
.activeLink
类不够具体,无法覆盖默认的
.menuLink li
样式。你需要更具体一些。还请注意,您可以使用
this
引用单击的元素,而不是手动构建id选择器字符串。试试这个:

$('.menuLink')。单击(函数(){
$(this.addClass('activeLink');
});
.menuLinks li{
颜色:#ffffff;
浮动:左;
左边距:2倍;
宽度:115px;
高度:60px;
背景色:#004f80;
文本对齐:居中;
字体大小:13px;
字体大小:正常;
字体风格:普通;
字体拉伸:正常;
}
李梅努林克斯:停下来{
背景色:#006eb3;
光标:指针;
}
梅努林克斯先生{
颜色:#fff;
}
.menuLinks li.activeLink{
颜色:#004f80;
背景色:#fff;
}

    链接1
  • Lnk2
  • 链接3 链接4 链接5
不是
var id=$(this.attr('id')$(“#”+id).
$(此).
?@MikelisBaltruks:这对我没有帮助。:)这就是为什么它只是一个评论。xD@Rory他的回答是正确的,如果你想阅读更多关于这个特定主题的文章,我建议你:没问题,很乐意帮忙