Javascript 使用带';格雷斯';?

Javascript 使用带';格雷斯';?,javascript,html,styles,hidden,Javascript,Html,Styles,Hidden,我有一个隐藏的div。通过JavaScript,我取消隐藏元素。但是我想用“grace”来解释div标签,而且不是那么自动的。我的意思是,在样式方面,javascript可以做到这一点吗?谢谢 HTML <input type="button" value="Unhide" onclick="unhide();"/> <div class="readystate" id="readystate"> <!-- something here --> </d

我有一个隐藏的div。通过JavaScript,我取消隐藏元素。但是我想用“grace”来解释div标签,而且不是那么自动的。我的意思是,在样式方面,javascript可以做到这一点吗?谢谢

HTML

<input type="button" value="Unhide" onclick="unhide();"/>
<div class="readystate" id="readystate">
 <!-- something here -->
</div>
javascript:

.readystate{
visibilty: hidden;
}
function unhide(){
   document.getElementById("readystate").style.visibility = "visible";
   document.getElementById("readystate").style.display=block;
}

基本上,在几个时间间隔内逐渐增加DIV的不透明度,直到完全可见为止,如下所示:

function unhide() {
    var el = document.getElementById('readystate'),
        opac = 0,
        interval = setInterval(function () {
            opac += 0.1;
            if (opac >= 1) {
                clearInterval(interval);
                opac = 1;
            }
            el.style.opacity = opac;
        }, 100);
    el.style.opacity = 0;
    el.style.visibility = 'visible';
}
如果您想让它花费更长的时间,只需将间隔从100增加,反之亦然。如果希望平滑,请将每一步添加的不透明度从0.1减小


我郑重建议您尝试jQuery。它有一个奇妙的动画库,非常容易使用。您可以从谷歌或jQuery.com(以及其他公共资源)下载该库:

因此,要“优雅地”显示div,首先将jQuery添加到页面:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"
    type="text/javascript"></script>

然后,您可以创建您的函数:

<script>
    function showMyDiv(){
        $('.readyState').show();  //this grabs all elements using the class ".readyState" and uses the "show" jQuery function
    }
</script>

函数showMyDiv(){
$('.readyState').show();//这将使用类“.readyState”获取所有元素,并使用“show”jQuery函数
}
查看文档:


另外,请查看其他jQuery函数,如、,以及其他转换/动画函数,如和。使用jQuery将Javascipt事件添加到HTML元素也非常容易。您使用它的次数越多,就越容易上钩。

您可以使用javascript JQuery库来实现这一点。您可以使用它制作动画,只需说(“$myDiv”).show(),这将优雅地显示转换的divUse CSS转换。应该注意的是,CSS转换是CSS3,并不是所有的转换都能在所有浏览器+1中正常工作!谢谢这正是我要找的。