Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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 JQuery:修改除我正在单击的元素之外的所有元素?_Javascript_Jquery - Fatal编程技术网

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>