为什么我的js一开始需要点击两次才能触发,之后点击一次就可以了。麻烦帮忙解决一下

我写了一段原生js,通过单击按钮来使div显示与隐藏,varanniu=document.getElementById('anniu')vardiv1=document.... 我写了一段原生js,通过单击按钮来使div显示与隐藏,var anniu=document.getElementById('anniu')var div1=document.getElementById('div1')var div2=document.getElementById('div2') anniu.onclick=function(){ if(div1.style.display=="block"){ div1.style.display="none"; div2.style.display="block"; }else{ div1.style.display="block"; div2.style.display="none"; } }但是第一次点击按钮是获取这个按钮,再点击一下才会执行,之后点击一次就可以了,请问该怎么改才能一开始点击一次就可以。还有就是这段代码用jquery该怎么写? 展开
 我来答
风雨桥下的鸡蛋花
2018-11-15
知道答主
回答量:3
采纳率:0%
帮助的人:2352
展开全部
有一种情况可能是因为网页中的某些JavaScript脚本代码往往需要在文档加载完成后才能够去执行,否则可能导致无法获取对象的情况,当第一次点击时文档才加载完毕;所以第二次点击时才有反应。为了避免类似情况的发生,可以使用以下两种方式:
(1).将脚本代码放在网页的底端,运行脚本代码的时候,可以确保要操作的对象已经加载完成。
(2).通过window.onload来执行脚本代码。
千年不死樱
2017-02-21 · TA获得超过1万个赞
知道大有可为答主
回答量:3767
采纳率:72%
帮助的人:2538万
展开全部
如果这个功能有jQuery写的话会非常简单。
js的话,我需要一段时间来想想_(:з」∠)_
追问
这段js用jq该怎么写?
追答
<!doctype html>
<html>
  <head>
  <title>demo</title>
  <meta charset="utf-8"/>
  <script type="text/javascript" src="jquery-3.1.1.min.js"></script>
  <style type="text/css">




  </style>
  <script>
$(function(){
$(".btn1").click(function(){
$(".t1").toggle();
$(".t2").toggle()
})
})
  
  </script>
  </head>
  <body>
   <div class="t1"><h1>这是一个div</h1></div>
<div class="t2" style="display: none;"><h1>这是另一个div</h1></div>
<button class="btn1">点击隐藏第一个div,显示第二个div,再次点击效果切换</button>



  </body>


</html>

效果是在开始显示第一个div点击按钮后隐藏第一个显示第二个,再点击隐藏第二个显示第一个

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式