Javascript 单击其他图像时隐藏图像

Javascript 单击其他图像时隐藏图像,javascript,jquery,Javascript,Jquery,这似乎很简单。。但是我对jquery有点不了解,也许我做错了什么傻事 我想单击一个图像,然后在单击时,在它旁边隐藏另一个图像 <script type="text/javascript"> $("#butShowMeSomeUnits").click(function() { $('#arrowUnitspic').hide(); }); </scri

这似乎很简单。。但是我对jquery有点不了解,也许我做错了什么傻事

我想单击一个图像,然后在单击时,在它旁边隐藏另一个图像

 <script type="text/javascript"> 

 
        $("#butShowMeSomeUnits").click(function() { 
            $('#arrowUnitspic').hide();
        });
 
      
 </script>
根据这两张图片,Id是正确的。我错过了什么?调试它,代码永远不会被触发

谢谢

编辑 我将控件作为asp母版页上的嵌套控件,其id正在重写。我现在已经把身份证修好了,但是我还是不能得到任何快乐。。。我还看到我的标记被呈现为输入,这会有所不同吗

<head>
<script src="js/jquery.min.1.5.js" type="text/javascript"></script>

    <script type="text/javascript">
        $(document).ready(function () {
            $("#butShowMeSomeUnits").click(function () {
                $('#arrowUnitspic').hide();
            });
        });

</script>
</head>

<body>
<input type="image" src="bookings_media/buttons/show-me-some-units.png" onmouseout="this.src='bookings_media/buttons/show-me-some-units.png'" onmouseover="this.src='bookings_media/buttons/show-me-some-units_orange.png'" id="butShowMeSomeUnits" name="ctl00$ctl00$ContentPlaceHolder1$bookings_right_content$butShowMeSomeUnits">
</body>
编辑


如果有任何困惑。。。我用准确的代码编写的JS fiddle也不起作用…

您需要在第页上完成:

<script type="text/javascript"> 
$(document).ready(function() {
       $("#butShowMeSomeUnits").click(function() { 
            $('#arrowUnitspic').hide();
        });
});
</script>

此外,查看浏览器控制台/dev工具显示的错误可能会有所帮助。

将代码包装到jQuery.ready事件中。并检查是否加载了jqueryjs文件

 $(document).ready(function(){
            $("#butShowMeSomeUnits").click(function() { 
                $('#arrowUnitspic').hide();
            });
    });

您的代码看起来很好,可以检查

您可能会怀疑的是:

将jQuery脚本加载到页面头部。 包括$document.readyfunction{//code here};如果您的标记在页面代码中的脚本之后。这就是在页面准备好/加载时加载代码的原因。
可以帮助您的步骤:

确保正确集成jQuery库。要检查是否需要在chrome上打开控制台并键入$html.hide;并查看当前页面是否消失 确保自定义JS文件或代码位于jQuery库的include下。 jQuery非常好的起点是将所有内容放入$document.ready中,如下例所示:

$document.readyfunction{ $img.clickfunction{ $img.hide; $this.show; }; };


代码在元素之前吗?如果是这样的话,把它放在后面。你能提供HTML或fiddle吗?为了将来的参考,最好包含一个指向JSFIDLE的链接,用于调试目的。是的,我基本上有这个想法。你是在暗示代码还不知道这些元素,因此没有绑定到它们吗?@LouisvanTonder,是的。您必须拥有$document.readyfunction{…code…};如果脚本位于页面底部,则不必这样做。首先,代码是否位于页面底部并不重要,但即使是这样,正确的形式是将其放在head标记的某个位置。此外,你的评论也不是基于问题中的任何事实。你不能假设他的代码在页面的底部,我不这么认为。。除非绝对必要,否则您应该避免将脚本放在头部。。这将使页面加载变慢,因为DOM呈现由于脚本解析而停止。。请在我的工作地点查看,我们从多个域/CDN提供服务,因此这不是问题。同样对于jquery,谷歌每天都在托管它。@LouisvanTonder这个线程变冷了。你能解决你的问题还是需要更多的帮助?
 $(document).ready(function(){
            $("#butShowMeSomeUnits").click(function() { 
                $('#arrowUnitspic').hide();
            });
    });