不能在div上应用简单的隐藏功能

时间:2014-12-23 10:14:35

标签: javascript jquery function show-hide

编辑:这是为了倾斜目的

我的标题中包含jQuery库:

<script src="assets/js/jquery-1.11.0.min.js"></script>

在身体里我有简单的div:

<div id="image">
    <img class="width" src="assets/images/janka.jpg">
</div>

在身体的最后是简单的脚本:

<script>
    $("#image").load(function () { 
        $("#image").hide();         
    });
</script>

我想在jQuery函数hide()加载后隐藏“image”div。但是在页面加载后没有任何反应,div仍然可见。在浏览器控制台中没有显示错误。无法找出我做错了什么。请在那里纠正我的平庸错误。

3 个答案:

答案 0 :(得分:2)

可以在Body,iframe,img等上调用load,但不能在div上调用load。相反,如果您希望在元素上使用onload事件,则需要将其与元素绑定,例如。与div.But基本上有两种方法来调用函数       1.是在div加载之后调用函数,在div元素之后写入

       <div id="image">
            <img class="width" src="assets/images/janka.jpg">
    </div>

<script>
   function toHide() { 
        $("#image").hide();         
    }
    toHide();
    </script>

2。是触发img的函数onload而不是div

    $("#image img").load(function () { 
                $("#image img").hide();     //USING JS function    
            });
        OR



         $("#image").load(function () { 
                $("#image").css('display', 'none');     //USING CSS   
            });

答案 1 :(得分:1)

#image元素是div,不会引发load事件。您需要选择引发事件的img元素:

$("#image img").load(function () { 
    $("#image").hide();         
});

答案 2 :(得分:1)

应该是img:

$("#image img").load(function () { 
        $("#image img").hide();         
    });

无法检查div的负载,但可以检查图像。如果你想在html准备好之后立即隐藏div,那么使用ready handler:

$(document).ready(function(){
 $('#image').hide();
});

但是你在关闭正文结束时使用脚本你只需应用它:

$('#image').hide();