JavaScript onclick处理程序没有聚焦或滚动

时间:2018-03-16 18:56:12

标签: javascript html

我有一个锚标记,点击后,我想要一个输入来获得焦点,页面滚动到表单。两者都没有发生,我不知道为什么,因为它如此简单。这是锚标记:

-vf scale

这是JavaScript:

<a href="#RSVPForm" title="RSVP Now!" class="button">RSVP Now</a>

它可以在Safari中使用,但不能在其他浏览器中使用。我不知道为什么它在其他任何地方都没有用。 我的测试网址是:https://meganandadam2018.com

2 个答案:

答案 0 :(得分:1)

将onclick事件添加到锚标记

<a onclick="focusfunc()">RSVP Now</a>

单击链接时,将调用focusfunc()函数。并添加focus()方法,如下所示:

function focusfunc(){
document.getElementById("firstname").focus();
}

答案 1 :(得分:0)

我意识到问题所在。我不必滚动到元素(通过a标签上的href)并聚焦元素。这两个行动相结合将相互抵消,这就是发生的事情。所以我摆脱了href,只有点击名字框的焦点,现在一切正常!这就是标记的样子:

<button type="button" title="RSVP Now!" id="rsvpcta">RSVP Now</button>

这是JS:

 const rsvpcta = document.getElementById("rsvpcta"),
 firstname = document.getElementById("firstname");
rsvpcta.addEventListener("click", () => {firstname.focus();})