我基本上想要在弹出的网页中创建一个区域(即在点击某个内容时,它与网页的一部分重叠)。
好吧,所以我所做的是创建一个div
并将其z-index设置为大于所有其他元素。
然后我用jQuery
$("#myElement").hide();
在开始时使用jQuery,我使用onclick进行显示。到目前为止,一切都很完美,但这种方法缺乏流动性。 我的流动性是指该区域的显示和隐藏不会产生任何影响。 所以我的问题是,这种方法是否正确?此外,我可以添加某种动画来使显示和隐藏更有趣吗?
答案 0 :(得分:1)
阅读this。这应该让你开始让事情变得更有趣。
这是一个基本的例子,可以增加一些效果。
$('button').click(function(){
$('div').show('slow');
});
答案 1 :(得分:1)
只有与它们相关的技巧是,您无法将元素设置为display: none
的动画,并注意jQuery的.hide()
设置display
到{{1}意思是你不能将动画与这些jQuery方法结合起来)。但是,有很多其他方法可以做到这一点。例如,请参阅讨论该问题的this blog post。
你也可以拥有"隐藏"国家在屏幕外翻译了几千个像素,并且#34;可见"状态设置为none
。请注意,如果您使用此解决方案,您可能需要为转换计时功能使用某种自定义贝塞尔曲线(this tool可能对此有用)。
答案 2 :(得分:0)
显示元素的方法有很多,CSS显示属性设置为none
,例如
$('#myElement').show(600, 'linear');
$('#myElement').fadeIn(600, 'linear');
$('#myElement').fadeTo(600, 1.0, 'linear');
但如果您想要一些特殊的动画,那么请使用CSS& jQuery,例如
#myElement {
background: #999;
position: absolute;
display: none;
top: 50%;
left: 50%;
width: 0;
height: 0;
}
$('#myElement').show().stop().animate({ width: '200px', height: '200px', margin: '-125px 0 0 -125px' }, 600, 'easeOutBounce');
*注意:有关宽松效果的完整列表,请点击here