加载不同的jQuery版本和.js文件

时间:2015-02-18 07:02:52

标签: javascript jsp internet-explorer-8 liferay-6

这是一个非常特殊的情况。我正在开发一个需要支持IE8及以上+现代浏览器的网络应用程序。对于IE8,我们设法加载了jquery 1.X和JQUery UI(两者都只在一个文件中),我们有现代浏览器的JQuery 2和JQuery UI(在另一个文件中)。问题是我需要找到一种方法来加载Jquery 1.X插件,仅用于 IE8 以及现代浏览器的其余插件。

我必须找到一些解决方案,当您必须添加针对特定浏览器的css但不允许我在 jsp文件上执行此类操作时:

**Load just for modern browsers (ie9, ie10,ie11, chrome, firefox)** {
            <script type="text/javascript" src="/eacat-theme/js/jquery.autocomplete.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/ui.dropdownchecklist.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/noty/jquery.noty.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/noty/layouts/topCenter.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/noty/themes/default.js"></script>

}

**load just for ie8** {
            <script type="text/javascript" src="/eacat-theme/js/js-old/noty/jquery.noty.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/js-old/noty/layouts/topCenter.js"></script>
            <script type="text/javascript" src="/eacat-theme/js/js-old/noty/themes/default.js"></script>

}

我有另一个问题,我不能使用javascript作为针对特定浏览器的解决方案,因为jquery版本也必须加载,具体取决于浏览器。任何帮助将非常感激。我不知道它是否有用,但是因为我在 Liferay 6.2 中工作,我已经在html标签上有一个根据浏览器而改变的类。

1 个答案:

答案 0 :(得分:0)

您需要创建一个新主题(或编辑您创建的自定义主题)并在标记内添加以下行:

<!--[if lt IE 8]>
        <script type="text/javascript" src="$javascript_folder/jquery-1.11.1.min.js"></script>
        <script type="text/javascript" src="$javascript_folder/jquery-migrate-1.2.1.min.js"></script>
    <![endif]-->
    <!--[if gte IE 8]>
        <script type="text/javascript" src="$javascript_folder/jquery-2.1.1.min.js"></script>
    <![endif]-->
    <!--[if !IE]>
        <!--><script type="text/javascript" src="$javascript_folder/jquery-2.1.1.min.js"></script><!-->
    <![endif]-->

我正在使用此解决方案并且正在运行