假设我想使用lightbox jquery插件向页面添加图片库。
问题:
如何添加灯箱脚本?当然,我可以将它添加到我的主题的layout.cshtml文件中,但是每个页面都需要灯箱脚本,即使它不使用它。
然后我需要将以下脚本添加到页面中:
<script type="text/javascript">
$(function () {
$('#photoGallery a').lightBox({ fixedNavigation: true });
});
</script>
同样,我可以将它添加到layout.cshtml文件中,但最好将其添加到页面中。好的,所以我可以为该页面创建一个图层并将一个html小部件添加到页脚区域,但肯定有更好的方法吗?
答案 0 :(得分:3)
您可以使用模块库中可用的众多图库模块之一并完成它。但是如果你想手动完成它,那么恐怕你必须手动完成它,是的;)但是即使使用特殊的图层和小部件似乎也很复杂:如果你要沿着这条路走下去,为什么不呢?你只是把那个脚本放在页面标记内(来自编辑器)?
答案 1 :(得分:1)
如果您只需要根据元素或元素集的存在加载脚本,我会这样做:
function LazyLoadScripts() {
if ($('#photogallery').length > 0) {
$('<script src="path-to-script" type="text/javascript"></script>').appendTo('body');
window.setTimeout("$('#photoGallery a').lightBox({ fixedNavigation: true });", 1);
}
/* load any other scripts here in the same way */
}
$(document).ready(function() { LazyLoadScripts(); });
现在您可以将其插入到布局中,或者如果您倾向于代码,则可以为BodyPart创建新的驱动程序并使用新形状插入此脚本。您还需要将该形状放入头部或尾部区域。