隐藏.img javascript onload

时间:2013-01-06 12:22:42

标签: javascript

为什么此代码无效?我搜索.img属性,但样式没有改变,总是图片可见。

HTML

    <script type="text/javascript">
    function displayDate()
    {
            $('img[alt=image2]').css("display","none");
            $('img[alt=image3]').css("display","none");
            $('img[alt=image4]').css("display","none");

            $('img[alt=image2]').css("visibility","visible");
            $('img[alt=image3]').css("visibility","visible");
            $('img[alt=image4]').css("visibility","visible");
    }
</script>

HTML

<body OnLoad="displayDate()">
<img src="im.jpg" alt="image2"/>
<img src="im.jpg" alt="image3"/>
<img src="im.jpg" alt="image4"/>
</body>

你可以在chrome中看到错误

enter image description here

2 个答案:

答案 0 :(得分:4)

我认为您的问题是在使用jQuery语法时没有包含jQuery库。因此,请尝试将jQuery库添加到页面的<head>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

在加载时执行某些操作的jQuery方法如下:

$(function() {
   // this code will execute on load
});

隐藏元素的jQuery方法是这样的:

$('img[alt="image2"]').hide();

要隐藏包含“{image”字样的alt的图片,您可以执行此操作(可以找到其他选择器选项here):

$(function() {
    $('img[alt*="image"]').hide();
});

除了使用alt属性外,另一个选项是为图像指定一个类,因此您可以根据类别选择图像:

$(function() {
    $('.myImageClassName').hide();
});

<img class="myImageClassName" />

或将其封装在div中,并使用唯一的id

$(function() {
    $('#myImageContainer img').hide();
});

<div id="myImageContainer">
    <img />
    <img />
    <img />
</div>

答案 1 :(得分:1)

尝试为每个img标记设置一个id并尝试使用此jquery hide()函数...

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

可能有用......