jquery - 在表单中的另一个元素之后放置 div

标签 jquery css position css-position

您好,我想在表单中的 filedset 之后放置一个 div,但该表单有另一个容器元素,并且 fieldst 的高度不固定,它会随着其中的内容而变化。 我用 jQuery 做了这个但是不起作用。哦,我不能将 div 放在表单中,因为该 div 包含另一个表单。

<script>
  $(function(){
  var heightOfform = document.getElementById("form").scrollHeight;
  var heightOffsomethingafter = document.getElementById("somethingafter").scrollHeight;
  document.getElementById("divtoposition").css('top', (heightOfform-heightOffsomethingafter)+'px');
  });
</script>
<style>
#all {position:relative;}
#divtoposition {position:absolute;}
</style>
<div id="all">
<div id="divtoposition"><form></form></div>
<div id="formcontainer">
  <form id="form">
    <fieldset id="afterthis"></fieldset>
    <div id="somethingafter"></div>
  </form>
</div>
</div>

最佳答案

我认为答案很复杂,但您能解释一下为什么您要放置的 div 中有一个表单吗?它有什么作用?可以用另一种方式完成吗?你不能把一个表格放在一个表格里,这样就不行了。您可以将 DivToPosition 的顶部设置为 100px,然后让 jquery 获取字段集的高度。如果字段集的高度为 150px,您可以让 Js 将 150 添加到 100,现在 DivToPosition 的高度为 250px;

 <script>
$(function(){
var divtopositionTop = 100,
fieldsetHeight = $('#afterthis').height();
   $('#divtoposition').css('top', divtopositionTop+fieldsetHeight+'px');
})
</script>

只是一个可以做到的例子。必须在文档准备就绪时完成,以便设置高度。但是,这可能会导致位置快速变化,即元素在应用样式时从一个位置移动到另一个位置。

关于jquery - 在表单中的另一个元素之后放置 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11377049/

相关文章:

html - 如何将图像居中放置在div的中间?

c# - 如何获取标签的位置?

jquery - 简单的 Jquery 事件不起作用

javascript - 如何将表单数据存储在ajax变量中?

javascript - 使用 jquery 减小每个元素的大小

html - 如何使语义 ui 页面响应?

javascript - 使用 jQuery 加载的居中 HTML 元素

java - 如何让ImageView出现在圆内的随机位置?

javascript - 一旦满足特定条件就停止动画 - Jquery

javascript - 在 Highcharts 中向下钻取 - 如何删除系列