0

我的一个页面有一个代码。当有人单击单选按钮时,它应该淡入、停留和淡出图像。也将使用 ajax 更新数据库。

<html>
<body>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>

<script type="text/javascript">
$("#rad").click(function() {
    $("#success").fadeIn(500);
    $("#success").delay(1000);
    $("#success").fadeOut(1000);
})
</script>

<table class="profimg">
    <tr><td height="50" width="50"><img id="success" src="http://cdn4.iconfinder.com/data/icons/simplicio/128x128/notification_done.png" style="display:none" height="50" width="50"></td></tr>
    <tr><td align="center"><img class="profimg" src="" alt="Administratorasdf" height="100" width="100"/></td></tr>
<tr><td id="rad" align="center"><input type='radio' title='Publicly Visible' name='img_pub' onclick="upimg1()" /> <input type='radio' title='Visible Only To Users' value='UsersOnly' name='img_pub' onclick="upimg2()" /> <input type='radio' title='Visible Only To You' value='Hide' name='img_pub' onclick="upimg3()" checked='checked'/></td></tr>
</table>

</body>
</html>

我删除了 ajax 部分以避免混淆。这是我使用的 jsFiddle。http://jsfiddle.net/c7ajb/1/可能是什么错误?

4

3 回答 3

4

这是有效的:

$("#rad").click(function () {
    $("#success").fadeIn(500).delay(1000).fadeOut(1000);
});​

Javascript 有时可以是异步的,如果你不这样做,delay()将无法工作。

您还应该使用回调来实现更好的代码演化。

于 2012-11-13T09:12:34.090 回答
1

delay/fadeOut放在函数的回调中fadeIn(或按照其他答案中的建议链接方法):

$("#rad").click(function () {
    $("#success").fadeIn(500, function() {
        $(this).delay(1000).fadeOut(1000);
    });
});

演示在这里

于 2012-11-13T09:16:17.590 回答
0
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>

    <script type="text/javascript">
        $(document).ready(function(e) {
            $(".radios").click(function() {
                $("#success").fadeIn(500).delay(1000).fadeOut(1000);
            })
        });
        function upimg1(){}
        function upimg2(){}
        function upimg3(){}
    </script>
</head>
<body>

    <table class="profimg">
        <tr>
            <td height="50" width="50">
                <img id="success" src="http://cdn4.iconfinder.com/data/icons/simplicio/128x128/notification_done.png" style="display:none" height="50" width="50">
            </td>
        </tr>
        <tr>
            <td align="center">
                <img class="profimg" src="" alt="Administratorasdf" height="100" width="100"/>
            </td></tr>
        <tr>
            <td id="rad" align="center">
                <input class="radios" type='radio' title='Publicly Visible' name='img_pub' onClick="upimg1()" /> 
                <input class="radios" type='radio' title='Visible Only To Users' value='UsersOnly' name='img_pub' onClick="upimg2()" /> 
                <input class="radios" type='radio' title='Visible Only To You' value='Hide' name='img_pub' onClick="upimg3()" checked='checked'/>
            </td>
        </tr>
    </table>

</body>

于 2012-11-13T09:23:58.847 回答