我看到一个奇怪的行为。 请保存为HTML文件并将其打开。 因为“Lorem ipsum dolor sit amet”,您只会看到“Inline”,对于media="screen"
,有"display: none"
。完善。然后调用浏览器的“打印预览”功能。你会看到“Inline”和“Lorem ipsum dolor sit amet”,因为后者的"display: inline"
为media="print"
。再次完美。这是我需要的行为。现在点击“Inline”链接。将出现一个带有“Lorem ipsum dolor sit amet”的花式框。关闭这个fancyBox。再次调用浏览器的“打印预览”功能。你只会看到“内联”,即现在你不会看到“Lorem ipsum dolor sit amet”。真是太棒了!有人知道原因吗?!这是fancyBox中的错误吗? DIV标签在花哨框显示后变为隐藏“永远”
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="fancyBox/lib/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="fancyBox/source/jquery.fancybox.js?v=2.0.6"></script>
<link rel="stylesheet" type="text/css" href="fancyBox/source/jquery.fancybox.css?v=2.0.6" media="screen" />
<script type="text/javascript">
$(document).ready(function() {
$('.fancybox').fancybox();
});
</script>
<style type="text/css" media="screen">
.hiddenContent {
display: none
}
</style>
<style type="text/css" media="print">
.hiddenContent {
display: inline
}
</style>
</head>
<body>
<a class="fancybox" href="#inline1">Inline</a>
<div id="inline1" class="hiddenContent">
<p>Lorem ipsum dolor sit amet</p>
</div>
</body>
</html>
谢谢。我应该如何执行这种克隆? –
我使用下面的代码: '$ .fancybox({#myElement“)。clone() });' - 但在我的情况下,我无法硬编码标签名称(”# myElement“),因为我在我的网站上使用了一个相同的fancyBox用于数十个链接。或者我应该开始使用几十个fancyBoxes?希望不是:)那么,如何克隆目标元素而不用为其名称进行硬编码? –