gpt4 book ai didi

javascript - 复制 html 元素以缩放至全屏的正确方法

转载 作者:行者123 更新时间:2023-12-03 07:50:47 26 4
gpt4 key购买 nike

我有一个看起来像这样的页面...

<body>

<div id="detailDiv1" style="height 100px; overflow:auto">
</div>

<div id="detailDiv2" style="height 100px; overflow:auto">
</div>

<div id="detailDiv3" style="height 100px; overflow:auto">
</div>

<div id="detailDiv4" style="height 100px; overflow:auto">
</div>

</body>

每个detailDivs都动态加载内容行(通常有很多行,导致detailDivs内部出现垂直滚动条)。每个detailDiv 内的每一行都包含一个小图像、一些文本和几个按钮,这些按钮会增加数据库中的计数,然后在行本身上动态更新(ajax)。

由于每个detailDiv都非常小,我正在尝试实现“全屏查看”选项,但正在努力想出一个优雅的计划...

我知道我将使用引导模式来呈现每个detailDiv的全屏版本,我猜我需要从每个detailDiv复制html - 类似于...

$('#myFullScreenModal').html($('#detailDiv1').html());

这将正确加载内容,但当然元素将具有完全相同的名称(因此与数据库的交互将受到干扰,除非我先清空原始容器,并在模式关闭时重新加载它) 。

但是这些选项对我来说听起来很老套,所以我想知道是否有一种更标准的方法来实现这种效果,而不必复制大块的 html。

感谢您的任何想法。

最佳答案

您可以在相关 div 上使用 position:fixed,然后将其展开。这样您根本不必复制任何内容,只需将确切的元素显示为“全屏”即可。

$('.go-fullscreen').click(function() {
var $parent = $(this).parent();
if ($parent.hasClass('fullscreen')) {
$parent.removeClass('fullscreen');
} else {
$parent.addClass('fullscreen');
}
});
html, body {
width: 100%;
height: 100%;
}

div {
height: 100px;
overflow: auto;
}
.red { background-color: #F00; }
.green { background-color: #0F0; }
.blue { background-color: #00F; }
div.fullscreen {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="red">
<p>1</p>
<p>2</p>
<p>3</p>
<p>4</p>
<p>5</p>
<p>6</p>
<p>7</p>
<p>8</p>
<button class="go-fullscreen">Fullscreen</button>
</div>
<div class="blue">
<p>10</p>
<p>20</p>
<p>30</p>
<p>40</p>
<p>50</p>
<p>60</p>
<p>70</p>
<p>80</p>
<button class="go-fullscreen">Fullscreen</button>
</div>
<div class="green">
<p>100</p>
<p>200</p>
<p>300</p>
<p>400</p>
<p>500</p>
<p>600</p>
<p>700</p>
<p>800</p>
<button class="go-fullscreen">Fullscreen</button>
</div>

关于javascript - 复制 html 元素以缩放至全屏的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34997959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com