Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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
Jquery——在DIV中查找元素的ID_Jquery_Html - Fatal编程技术网

Jquery——在DIV中查找元素的ID

Jquery——在DIV中查找元素的ID,jquery,html,Jquery,Html,我试图在这里获取元素的ID,这样当我用类“module”将鼠标悬停在div上时,我就可以用它来设置不透明度的动画 我已将类为“moduleInfo”的所有元素的不透明度设置为0。基本上,我在这里要做的是,当我将鼠标悬停在ID为moduleInfo_1的模块上时,我希望相应的元素出现,在本例中,它是moduleInfo_1 希望我对你们大家都有意义 <div class="module" id="modulePic_1"> <div class="moduleTitle"

我试图在这里获取
元素的ID,这样当我用类“module”将鼠标悬停在div上时,我就可以用它来设置不透明度的动画

我已将类为“moduleInfo”的所有
元素的不透明度设置为0。基本上,我在这里要做的是,当我将鼠标悬停在ID为moduleInfo_1的模块上时,我希望相应的
元素出现,在本例中,它是moduleInfo_1

希望我对你们大家都有意义

<div class="module" id="modulePic_1">
    <div class="moduleTitle">
        <div style="float:left;">d</div>
        <div class="moduleInfo" id="moduleInfo_1"></div>

    </div
    <div class="module1">
</div>

<div class="module" id="modulePic_2">
    <div class="moduleTitle">
        <div style="float:left;">d</div>
        <div class="moduleInfo" id="moduleInfo_2"></div>

    </div>
    <div class="module2">
</div>

D

如果每个实体上的_1值之间存在直接对应关系,则只需对原始modfulePic_1值进行“拆分”,获取尾随数字,然后通过构造选择器获取相应的moduleInfo:

$('.module').each(function(el){
    var digit = $(el).attr('id').split('_')[1];

    var sibling = $('moduleInfo_' + digit, el);

    $(el).mouseover(function(){ 
        // do something to sibling;
    });

    $(el).mouseout(function(){
        // undo something to sibling;
    });
});

如果每个实体上的_1值之间存在直接对应关系,则只需对原始modfulePic_1值进行“拆分”,获取尾随数字,然后通过构造选择器获取相应的moduleInfo:

$('.module').each(function(el){
    var digit = $(el).attr('id').split('_')[1];

    var sibling = $('moduleInfo_' + digit, el);

    $(el).mouseover(function(){ 
        // do something to sibling;
    });

    $(el).mouseout(function(){
        // undo something to sibling;
    });
});

等等,我们都想得太多了。您根本不需要ID选择器:

$('.module').hover(
  function() { $(this).find('.moduleInfo').show() },
  function() { $(this).find('.moduleInfo').hide() }
);


以下是我以前的经历,如果以上还不够的话:

function getModNum( className ) {
  return className.split('_')[1];
}

$('.module').hover(
  function() {
    var modNum = getModNum( $(this).attr('id') );
    $('moduleInfo_'+modNum).show();
  },
  function() {
    var modNum = getModNum( $(this).attr('id') );
    $('moduleInfo_'+modNum).hide();      
  }
);

等等,我们都想得太多了。您根本不需要ID选择器:

$('.module').hover(
  function() { $(this).find('.moduleInfo').show() },
  function() { $(this).find('.moduleInfo').hide() }
);


以下是我以前的经历,如果以上还不够的话:

function getModNum( className ) {
  return className.split('_')[1];
}

$('.module').hover(
  function() {
    var modNum = getModNum( $(this).attr('id') );
    $('moduleInfo_'+modNum).show();
  },
  function() {
    var modNum = getModNum( $(this).attr('id') );
    $('moduleInfo_'+modNum).hide();      
  }
);

此外,您可能希望添加第二个类,如
,以使事情更简单。此外,您可能希望添加第二个类,如
,以使事情更简单。