onMouseOver在激活之前需要单击

时间:2014-04-06 21:54:12

标签: javascript onmouseover

我在div上的onMouseOver事件有问题。我搜索了论坛并试图将这里提出的一些解决方案用于类似的事件,但还没有找到它的工作原理。它可能很简单,但我自己无法弄清楚;我可能正在寻找错误的方向。有人有任何提示吗?

function toggleHeight (e, maxHeight) {
    e = document.getElementById("small");

    if(e.style.height != '1.2em') {
        e.style.height = '1.2em';

    }   else {
        e.style.height = maxHeight + 'px';
    }
}

HTML

<a href="#!" onMouseOver="toggleHeight(this,180); return false" style="display:block;">Menu</a>

1 个答案:

答案 0 :(得分:0)

我不知道你的方法,你做了很多错误,但这里是你想要的代码我的意思是你想要改变div的高度以及为什么你提到a标签{ {1}}之前标记...但是这里是代码。继续复制这段代码,然后粘贴到你的代码编辑器中......这完全正常,我测试了这个......

div

建议:

当你写 <html> <style type="text/css"> #link{ background-color: lime; width:200px; } </style> <script type="text/javascript"> var toogleH = function(h){ //alert("sanmevg"); var x = document.getElementById("link"); x.style.height = h; }; var toogleA = function(a){ var v = document.getElementById("link"); v.style.height = a; }; </script> <body> <div id="link" onmouseover ="toogleH('100');" onmouseout="toogleA('20');">sanmveg</div> </body> </html> 时,你的标签中的

1)你必须用单引号引用高度。 永远记住它总是toogleHeight而不是e.style.height = '180',这意味着你必须总是写一个字符串。如果你想要任何css更改,例如e.style.height = 180。所以当你输入你输入任何标签时的参数来改变它的css然后你必须输入e.style.backgroundColor= "lime"而不是onmouseover=" toogleHeight('180');",看看180左右的报价,因为正如我之前告诉你的那样你必须给包含一个或多个单词的javascript一个刺痛来改变任何标记的css。

2)由于某些原因,使用onmouseover=" toogleHeight(180); px em,但是在您的代码中,您已经写过e.style.height = maxHeight + 'px';不要写px,因为在CSS中width:200px;width:200;。这意味着您应该只写e.style.height = maxHeight;