我正在尝试使用show div on click。但第一个工作正常,而不是第二个。

 <script type="text/livescript">
    function showDiv() {
      div = document.getElementById('change_pass');
      div.style.display = "block";
    }

function showDiv1() {
      div = document.getElementById('invite-friend_now');
      div.style.display = "block";
    }
 </script>

使用links onclick:
<a href="#" onclick="javascript:showDiv();">Change Password</a>

<a href="#" onclick="javascript:showDiv1();">Invite Friend</a>

单击“更改密码”时,该分区将正确弹出。但当我们点击“邀请朋友”链接时,页面会转到顶部,url只显示www.example.com/#(…trailing#

最佳答案

您可以传递一些参数来只使用一个函数。此外,还可以使用preventDefault()来防止页面向上滚动:

<script type="text/livescript">
    function showDiv(e, divName) {
      div = document.getElementById(divName);
      div.style.display = "block";
      e.preventDefault();
    }
</script>

<a href="#" onclick="showDiv(event, 'change_pass');">Change Password</a>

<a href="#" onclick="showDiv(event, 'invite-friend_now');">Invite Friend</a>

另外,请检查这个invite-friend_nowID,因为我认为您可能拼错了它。

08-18 09:55