JS将onlick()转换为mouseover

时间:2017-08-10 16:36:48

标签: javascript jquery html tabs

我遇到了一件似乎不想工作的JS问题。

我按照本指南创建了一个标签小部件: https://www.w3schools.com/howto/howto_js_tabs.asp

我用html部分中的onmouseover替换了onlick,并将按钮更改为a-type元素:

原始

<button class="tablinks" onclick="openCity(event, 'London')" id="defaultOpen">London</button>

我的版本:

<a class="tablinks" onmouseover="openCompany(event, 'xName') "id="defaultOpen">Link</a>

现在一切正常。但在页面的下方,它解释了默认情况下如何保持某个标签打开,但它似乎没有正常工作。无论是在原版还是在我的版本中。

原始

document.getElementById("defaultOpen").click();

我的版本:

document.getElementById("defaultOpen").mouseover();

有谁知道为什么这不起作用?它让我疯了! 谢谢!

2 个答案:

答案 0 :(得分:1)

试试这个solution

只需使用

document.getElementById("defaultOpen").onmouseover();

而不是

document.getElementById("defaultOpen").mouseover();

&#13;
&#13;
function click_btn()
{
  document.getElementById("defaultOpen").onmouseover();
}

function openCompany(a, b)
{
  alert('link');
}
&#13;
<button class="tablinks" onclick="click_btn()" id="defaultOpenButton">London</button>
<a class="tablinks" onmouseover="openCompany(event, 'xName')" id="defaultOpen">Link</a>
&#13;
&#13;
&#13;

答案 1 :(得分:-1)

你能否只使用这一行来保持第一行开放:

document.getElementById("defaultOpen").style.display = "inline";

Demo

我认为这可以帮到你