Javascript 通过单击图像隐藏和显示div

Javascript 通过单击图像隐藏和显示div,javascript,jquery,onclick,show-hide,Javascript,Jquery,Onclick,Show Hide,我试图根据单击的图像显示和隐藏一个div,因此当您单击resteraint图像时,它会显示名为members的div窗口。我得到的错误是未捕获的语法错误:意外的标记{ 这是一个单独的JavaScript文件上的脚本 $(document).ready(resteraunt(){ $('people').click(function(){ $("memberswindow").show(); }); }); 这是HTML <!DOCTYPE htm

我试图根据单击的图像显示和隐藏一个div,因此当您单击resteraint图像时,它会显示名为members的div窗口。我得到的错误是
未捕获的语法错误:意外的标记{

这是一个单独的JavaScript文件上的脚本

 $(document).ready(resteraunt(){

    $('people').click(function(){
    $("memberswindow").show();

    });

    });
这是HTML

 <!DOCTYPE html>

   <html>

   <head> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
       <script src="Wolfeboro_Connection/Scripts/homepage.js"></script>
       <script src="Wolfeboro_Connection/Scripts/menu.js"></script>

   <link rel='stylesheet' href='Wolfeboro_Connection/CSS/index.css'> 


   </head>

   <body>



   <img src="Wolfeboro_Connection/wc.png" id="wc">

   <a href='' onclick='resteraunt();'><img src='Wolfeboro_Connection/resteraunt.jpg'        
   id="resteraunt"></a>
   <a href='' onclick='map();'><img src='Wolfeboro_Connection/map.jpg' id="map"></a>
   <a href='' onclick='mail();'><img src='Wolfeboro_Connection/mail.jpg' id="mail"></a>
   <a href='' onclick='people();'><img src='Wolfeboro_Connection/people.jpg' id="people"></a>

   <div id="window"> <div id="memberswindow"> <input type="text" id="username"   
   placeholder="Username">

   <input type="text" id="loginpassword" placeholder="Password">

   <input type="text" id="email" placeholder="Email"> </div> </div>

   <div id="banner"> <h1> Wolfeboro Connection </h1> </div>









   </body>

   </html>

Wolfeboro连接

jquery要求您分别通过表示符号“.”和“#”来声明目标元素是“类”还是“id”

试试这个:

$("#people").click(function(){
  $("#memberswindow").show();
});
此外,用于document.ready()调用的语法不正确,请尝试以下完整解决方案:

$(document).ready(function(){
    $("#people").click(function(){
      $("#memberswindow").show();
    });
});

您不可能为不同的变体创建方法。想象一下,当您必须为100个不同的场景显示div时

可以采取一般方法

  • 为每个实体创建rel/class属性

    <div id="ListenAllClick">
      <a href="#"><img src="mysrx" rel="divIdToShow"/></a>
      <a href="#"></a>
    </div>
    

  • 您的jQuery选择器缺少id哈希。只需查看右侧的“相关”答案列,这显然是一个重复的问题。您传递给
    ready()的函数
    方法是一个匿名函数,而不是一个命名函数,应该包含在匿名函数中。仅将“image”一词替换为“link”餐厅的可能重复项不拼写为resteraint。很抱歉,我不得不说,问题是您正在调用onclick=“”属性到您的div,这是完全不必要的…您可以删除锚(链接)图像周围的标记。jquery将单击绑定到图像元素,因此没有理由在其周围放置另一个html链接。您可以完全删除标记。当您使用jquery将单击事件绑定到元素时,不需要这些标记。感谢我查看jquery api,我应该查看.bind和.click events吗复杂的
    $(function() {  // equivalent to $(document).ready(function(){});
    
       $("a").on("click", function(eV) { 
    
          /* for better performance use 
              $("#ListenAllClick").on("click", "a", function() {});
              instead of 
              $("a").on("click", function() { 
          */
          eV.preventDefault();
          $("#" + $(this).attr("rel"/*"class"*/)).show();
       });
    });