JavaScript通过标记显示/隐藏元素

JavaScript通过标记显示/隐藏元素,javascript,html,hyperlink,hide,show,Javascript,Html,Hyperlink,Hide,Show,我目前正在使用一个按钮,当点击它时,它会显示或隐藏一个段落,我想知道是否有可能在这里有一个链接而不是一个按钮?显然,标记没有onclick属性。但我更希望它只是一个点击的链接,而不是一个按钮 我会尽量不让你对大量的代码感到厌烦。html如下所示: 函数showMore{ var dots=document.getElementByIddots; var moreText=document.getElementByIdmoreInfo; var moreText2=document.getEle

我目前正在使用一个按钮,当点击它时,它会显示或隐藏一个段落,我想知道是否有可能在这里有一个链接而不是一个按钮?显然,标记没有onclick属性。但我更希望它只是一个点击的链接,而不是一个按钮

我会尽量不让你对大量的代码感到厌烦。html如下所示:

函数showMore{ var dots=document.getElementByIddots; var moreText=document.getElementByIdmoreInfo; var moreText2=document.getElementByIdmoreInfo2; var btnText=document.getElementByIdmoreLess; 如果dots.style.display==无{ dots.style.display=inline; btnText.innerHTML=查看更多信息; moreText.style.display=无; moreText2.style.display=无; }否则{ dots.style.display=无; btnText.innerHTML=查看较少的信息; moreText.style.display=inline; moreText2.style.display=inline; } } ....... 查看更多信息
只需像这样使用单击事件处理程序

document.addEventListener'click',e=>{ 如果e.target.匹配“moreLess”{ 肖莫尔; } }; 函数showMore{ var dots=document.getElementByIddots; var moreText=document.getElementByIdmoreInfo; var moreText2=document.getElementByIdmoreInfo2; var btnText=document.getElementByIdmoreLess; 如果dots.style.display==无{ dots.style.display=inline; btnText.innerHTML=查看更多信息; moreText.style.display=无; moreText2.style.display=无; }否则{ dots.style.display=无; btnText.innerHTML=查看较少的信息; moreText.style.display=inline; moreText2.style.display=inline; } } ....... 查看更多信息
任何可见元素都可以具有包含元素的单击事件,因此您可以将HTML切换为:

<a onclick="showMore()" id="moreLess">See more Information</a>
查看更多信息您可以点击
是否尝试替换为can Have onclick do Have onclick显然标记没有onclick属性@斯科特马库斯现在知道了,我的错cheers@GrantJamieson你也应该看看我下面的答案,因为在你的用例中使用a标签是不正确的。谢谢你现在就开始工作!!我原以为一次点击就不能使用标签,但现在你可以了。Cheers@GrantJamieson看看我的答案。你不应该使用这样的标签。这是有用的+1