4

假设我想使用 lightbox jquery 插件向页面添加图片库。

问题:

如何添加灯箱脚本?当然,我可以将它添加到我的主题的 layout.cshtml 文件中,但是每个页面都需要灯箱脚本,即使它不使用它。

然后我需要在页面中添加以下脚本:

<script type="text/javascript">

        $(function () {

            $('#photoGallery a').lightBox({ fixedNavigation: true });

        });

</script> 

同样,我可以将其添加到 layout.cshtml 文件中,但最好将其添加到页面中。好的,所以我可以为该页面创建一个图层并将一个 html 小部件添加到页脚区域,但肯定有更好的方法吗?

4

2 回答 2

3

您可以使用模块库中提供的众多图像库模块之一并使用它来完成。但是,如果您想手动进行,那么恐怕您将不得不手动进行,是的;)但是即使使用特殊的图层和小部件似乎也很复杂:如果您要走那条路,为什么不您只是将该脚本放在页面标记中(来自编辑器)?

于 2012-06-25T23:12:17.597 回答
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 创建一个新驱动程序并插入这个具有新形状的脚本。您还需要将该形状放入头部或尾部区域。

于 2012-06-26T16:34:23.183 回答