我是javascript developpement的新手 我试图制作一个e函数,在特定鼠标事件后隐藏或显示跨度中的一些文本,我想在我的函数中传递此span的id 这是我的脚本,它只使用特定的id,即" sp1"在这种情况下,但我想在我的函数参数
中传递id<script>function myOverFunction() {
document.getElementById("sp1").style.visibility = 'visible';}
function myOutFunction() {
document.getElementById("sp1").style.visibility = 'hidden';}
这是我的html代码的一部分
<div id="lg1"onmouseover="myOverFunction()" onmouseout="myOutFunction()"></div>
<center>
<div>
<span id="sp1" style="visibility: hidden;" >Current Value :70 <br>Target :80 <br>
<div class="label label-blue">In progress 90%</div>
</span>
</div>
</center>
答案 0 :(得分:0)
将参数传递给类似的函数可以通过使用单引号或双引号来实现,具体取决于您用于将代码括在html中的内容。
<div id="mydiv" onclick="myFunction('mydiv');"></div>
这样做并不是最好的方法。
当onclick事件触发“myFunction”时,默认情况下会传递e
(event)参数。这包含有关发生的事件的大量信息,包括对触发它的对象的引用。因此,您可以使用它找到元素的id
。
function myFunction(e) {
e = e || window.event;
alert(e.target.getAttribute("id"));
}
你的HTML就是......
<div id="myDiv" onclick="myFunction()"></div>
编辑:
再看一下你的问题,你可以把它和你的两个功能结合成一个切换功能
function toggleVisibility(e) {
e = e || window.event;
if (e.target.style.visibility == "visible") {
e.target.style.visibility = "hidden";
} else {
e.target.style.visibility = "visible";
}
}
你可以为任何元素调用onmouseover
和onmouseout
的相同函数,只要提供visibility
属性不为空(我认为它默认为可见吗?有点猜测)< / p>