Javascript JQuery:修改除我正在单击的元素之外的所有元素?
我想改变所有其他被称为情感选择的元素的不透明度,我没有点击,但是。这对我来说不是新鲜事,所以我对这个不太熟悉,可能需要一些帮助。这是我的代码:Javascript JQuery:修改除我正在单击的元素之外的所有元素?,javascript,jquery,Javascript,Jquery,我想改变所有其他被称为情感选择的元素的不透明度,我没有点击,但是。这对我来说不是新鲜事,所以我对这个不太熟悉,可能需要一些帮助。这是我的代码: $('#modal-content').on('click', '.emotion-choice', function(e) { e.preventDefault(e); var current = $('.emotion-choice > span > strong').text(); $('.emo
$('#modal-content').on('click', '.emotion-choice', function(e) {
e.preventDefault(e);
var current = $('.emotion-choice > span > strong').text();
$('.emotion-choice > span > strong').not(current).html('a');
console.log(this);
});
如果它是我正在单击的同一个元素,它就会工作,但是因为它是子元素,这让我感到困惑
HTML这实际上是一个循环,我还想更改标题:
<a class="emotion-choice" href="#">
<span class="pull-left">
<strong class="pl10">'.$emotions[$key].'</strong>
</span>
</a>
HTML:
可以使用jQuery从一组元素中排除单击的元素。但是,您正试图从选定的元素集中排除单击的元素。已将单击事件绑定到的元素为,而不是
从.emotion choice元素的总集中排除已单击的元素,然后选择该元素集中的标记—排除已单击元素的集合
$'modal-content',点击,'.Mootion choice',函数E{
e、 防止违约;
$'.emotion choice'.notthis.find'>span>strong.html'-';
};
测试1
测试2
测试3
测试4
测试5
测试6
测试7
可以使用jQuery从一组元素中排除单击的元素。但是,您正试图从选定的元素集中排除单击的元素。已将单击事件绑定到的元素为,而不是
从.emotion choice元素的总集中排除已单击的元素,然后选择该元素集中的标记—排除已单击元素的集合
$'modal-content',点击,'.Mootion choice',函数E{
e、 防止违约;
$'.emotion choice'.notthis.find'>span>strong.html'-';
};
测试1
测试2
测试3
测试4
测试5
测试6
测试7
尝试使用var current=$this;。not接受元素、选择器或函数。@AramilRey:或just.notthis.Yehp,为了保留语法,两者都应该起作用:DForgot提到我已经尝试过了,但仍然不起作用。请尝试使用var current=$this;。not接受元素、选择器或函数。@AramilRey:或just.notthis.Yehp,为了保留语法,两者都应该有效:DForgot我已经尝试过了,但仍然无效。谢谢。我还试图改变标题标签后面图像的不透明度。我编辑了我的问题来告诉你我的意思。你能帮我一下吗?顺便说一下:我还加了$this.find'>span>strong'.css'opacity',1;当用户决定单击另一个元素时,使另一个元素再次显示为活动。是否希望单击的元素为不透明度:1,其他元素为不透明度:0.4?或者只是图像?你说得对。这其实并不聪明。我想我只需要选择整个元素来改变它的不透明度。我还想添加灰色的类,这样标题链接就不会多彩。这就是为什么我问如何具体更改标题的原因。不过,我也可以在主要元素选择中加入灰色。不过,我学到了一些新东西,我很感谢你的回答!我找到解决办法了,谢谢你。我还试图改变标题标签后面图像的不透明度。我编辑了我的问题来告诉你我的意思。你能帮我一下吗?顺便说一下:我还加了$this.find'>span>strong'.css'opacity',1;当用户决定单击另一个元素时,使另一个元素再次显示为活动。是否希望单击的元素为不透明度:1,其他元素为不透明度:0.4?或者只是图像?你说得对。这其实并不聪明。我想我只需要选择整个元素来改变它的不透明度。我还想添加灰色的类,这样标题链接就不会多彩。这就是为什么我问如何具体更改标题的原因。不过,我也可以在主要元素选择中加入灰色。不过,我学到了一些新东西,我很感谢你的回答!我找到了解决办法。
$('#modal-content').on('click', '.emotion-choice', function(e) {
e.preventDefault();
$(this).find('> span > strong').css('opacity',1);
$(this).find('> span > strong > span').html('test');
$('.emotion-choice').not(this).find('> span > strong').css('opacity',0.4);
$('.emotion-choice').not(this).find('> span > strong > span').css('opacity',0.4);
});
<a class="emotion-choice" href="#">
<span class="pull-left">
<strong class="pl10">'.$emotions[$key].'</strong>
<span style="background:url(img/emotions.png) 0 -'.$y.'px; height:70px; width:90px;
display:block; margin:20px 15px 0 0"></span>
</span>
</a>