jQuery ui shake效果将其他元素作为副作用移动

mar*_*jop 2 jquery jquery-ui

我想动摇一个"#error_message"div.我正在做:

$('#error_message').effect('shake', {times: 2, distance: 5}, 200);
Run Code Online (Sandbox Code Playgroud)

div被动摇了,问题是下面的div垂直移动,在动画进行过程中向下移动10个像素,然后它返回到它的位置.没有附加其他JS事件,"#error_message"是一个div(所以它是一个块).

对不起,我目前无法显示HTML和JS.任何提示为什么会发生这种情况?

Str*_*lok 6

好的,这种情况正在发生,因为你的错误div需要"摇动"的空间,所以你需要做的是将这个div 其后的内容流中取出来.

如果您的错误div具有固定的高度,您可以执行以下操作:

<div id="wrapper">
  <div id="error_message>Error content</div>
  <div id="content">rest of your content, other divs etc</div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

#wrapper {
  position: relative;
}

#error_message {
  position: absolute;
  width: 300px;
  height: 100px;
}

#content {
  margin-top; 100px;
  position: relative;
}
Run Code Online (Sandbox Code Playgroud)

因为你没有提供代码,所以很难调试这样的东西.也许你可以在http://jsfiddle.net上创建一个标记和CSS的小样本?