一种用于响应标记的模式。
有时,复杂的响应布局会受到源顺序的阻碍。此模式允许您通过设置元素的一个潜在父容器(在源中与匹配数据集
属性)显示:在特定断点处的块。
当在小屏幕设备上嵌入广告时,你可能会发现这很有用,这些广告需要在源代码的早期,但在桌面场景中需要在源文件的后期。或者,您可以使用它在页面末尾提供移动优先导航,同时确保它在更宽的视口中位于顶部。无论哪种方式,在协商布局之间的源订单差异时,这种模式都可以减轻服务器端的依赖。
1.在jQuery之后包含AppendAround插件。
<script src="/path/to/cdn/jquery.slim.min.js"></script> <script src="/path/to/src/appendAround.js"></script>
2.在整个DOM中插入潜在的元素容器。给每个容器一个数据集
具有与所有其他容器的值匹配的值的属性
<!-- potential container for appendAround --> <div class="foo" data-set="foobarbaz"></div> ... <!-- potential container for appendAround --> <div class="bar" data-set="foobarbaz"></div> ... <!-- initial container for appendAround --> <div class="baz" data-set="foobarbaz"> ...
3.将appendAround内容放在其中一个潜在的容器中。
<div class="baz" data-set="foobarbaz"> <p class="sample">Sample appendAround Element</p> </div>
4.拨打appendAround()
当DOM准备就绪时,在该元素上执行。
$( ".sample" ).appendAround();
5.示例CSS。
.sample { padding: 1em; background: tan; } .baz { display: block; } .foo, .bar { display: none; } @media (min-width: 30em){ .bar { display: block; } .foo, .baz { display: none; } } @media (min-width: 50em){ div.foo { display: block; } div.bar, div.baz { display: none; } }