繁体   English   中英

JavaScript onClick仅在第二次点击后才能工作

[英]JavaScript onClick work only after second click

我找到了另一个类似的问题,但几乎所有问题都适用于Android开发等高级内容。 我想,我的问题很简单。 我有这两个代码:

function toggle(d)
{
    var o=document.getElementById(d);
    o.style.display=(o.style.display=='none')?'block':'none';
}

在另一个文件中,我得到了:

<a href="javascript:;" onmouseover="toggle('maisinfo');">More Info </a>

当我点击鼠标悬停(第二个代码)时,它只是在第二次尝试后工作。

谁知道问题出在哪里?

Obs。:第一个代码在header.php中,第二个代码在single.php(WORDPRESS)上

第一次, d由CSS设置; JavaScript没有看到样式属性(请参阅获取渲染样式 )。 它最初看到o.style.display === "" (不是'none')。 因此,第一次单击将其设置为none,第二次单击将其设置为block。

将其更改为:

o.style.display = (o.style.display === 'block') ? 'none':'block';

因为第一次没有设置显示属性因此它不等于“无”

好吧,上面的代码没有任何问题。 也许某些东西与你的风格声明有关,比如将它设置为在你可能不想要的开始时阻止。 这是我为测试代码而编写的一个简单的JSFiddle: http//jsfiddle.net/77DMd/1/

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM