0
<style type="text/css">
#second{
 display:none;
}
</style>

在鼠标事件上,我想传递 div 的 id,它与我调用函数的当前元素无关。

<div id="first">
     ....
     ....
</div>
<div id="second">
     ....
     ....
</div>

<input type="image" src="..." id="notrelated"
 onClick="f('first','second')"
 />

javascript

<script type="text/javascript" language="javascript">
function f(first,second){
document.getElementById(first).style.display='none';
document.getElementById(second).style.visibility='visible';
}
</script>

因此,上述功能有助于隐藏和使基于图像上的鼠标事件的 div 可见。. . 我遵循了上述这些步骤,在使可见性“可见”之后它不会显示因为我已经使 div 第二次显示没有并且我尝试进行以下更改,这导致第二个 div 占据了我不喜欢的空间

<style type="text/css">
#second{
visibility:hidden;
}
</style>
4

2 回答 2

0

如果我正确理解您的问题,您想传递其他 DOM 元素的 id,本例为 div。要选择其他 DIVS,您需要向这些 DIVS 添加类。

<div class = 'someclass1' id ='one'></div>

并在您的 onclick 事件通行证上

$('.someclass1').attr('id');
于 2012-09-26T07:30:48.460 回答
0

如果我有你的问题,你只想在函数中传递你的 div id。因此,您可以轻松地将它传递给任何函数。

喜欢

<input type="image" src="..." id="notrelated" onClick="Toggle('first','second')" />

并且您的 js 函数将起作用

function Toggle(first,second){
   document.getElementById(first).style.visibility='hidden'
   document.getElementById(second).style.visibility='visible'
}

但是如果你只想通过这些 id 来切换这些,那么你应该将你的函数更改为 like

function Toggle(first,second){
   var firstDiv = document.getElementById(first);
   var secondDiv = document.getElementById(second);
   firstDiv.style.visibility= firstDiv.style.visibility == 'hidden'?'visible':'hidden';
   secondDiv.style.visibility= firstDiv.style.visibility == 'hidden'?'visible':'hidden';
}

你可以查看这个DEMO

于 2012-09-26T07:45:30.277 回答