How to find the jQuery version used by SAPUI5

sap-ui-core.js 是 bootstrap 局部的一部分,如下所示。 它蕴含一个 jQuery 文件的正本。 正在应用的 jQuery 版本能够通过命令 $.fn.jQuery 找到。

<!DOCTYPE HTML><html>    <head>        <meta http-equiv="X-UA-Compatible" content="IE=edge">        <meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>        <script src="resources/sap-ui-core.js"                id="sap-ui-bootstrap"                data-sap-ui-libs="sap.m"                data-sap-ui-theme="sap_bluecrystal">        </script>        <script>                    </script>    </head>    <body class="sapUiBody" role="application">        <div id="content"></div>    </body></html>

Add a custom version of jQuery

在应用程序的 WebContent 中创立一个新文件夹并为其指定任何名称。 咱们称之为jquery。 下载您想要的 jQuery 版本并将其放在此文件夹中。

Modify index.html

关上 index.html 文件并应用以下代码更新它。 增加了新 jQuery 文件的门路以及 jquery-ui-position.js 的门路。 SAPUI5 应用 jQuery UI Position 1.10.4 来定位弹出窗口、工具提醒等。 jQuery UI 版本 1.10.4 蕴含与 jQuery UI 版本 1.8.23 不兼容的更改。 jQuery.ui.position 中的一个次要不兼容更改,其中 offset 属性已被删除。 SAPUI5 运行时采纳了此更改,例如在 Popup 中,但应用程序可能也须要采纳其逻辑。

要跳过 SAPUI5 运行时应用 jQuery,resources / sap-ui-core-noJQuery.js 文件蕴含在 bootstrap 局部。

新的 index.html:

<!DOCTYPE HTML><html>    <head>        <meta http-equiv="X-UA-Compatible" content="IE=edge">        <meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>        <!-- include some jQuery version -->        <script src="jquery/jquery-2.1.0.js" ></script>        <!-- SAPUI5 uses jQuery UI Position 1.10.4 for positioning popups, tooltips, etc. -->        <script src="resources/sap/ui/thirdparty/jqueryui/jquery-ui-position.js" ></script>        <!--        <script src="resources/sap-ui-core.js"                id="sap-ui-bootstrap"                data-sap-ui-libs="sap.m"                data-sap-ui-theme="sap_bluecrystal">        </script>        -->                <script src="resources/sap-ui-core-nojQuery.js"                id="sap-ui-bootstrap"                data-sap-ui-libs="sap.m"                data-sap-ui-theme="sap_bluecrystal">        </script>                <script>                sap.ui.localResources("sapui5.jqverchange.demo");                var app = new sap.m.App({initialPage:"idmain1"});                var page = sap.ui.view({id:"idmain1", viewName:"sapui5.jqverchange.demo.main", type:sap.ui.core.mvc.ViewType.XML});                app.addPage(page);                app.placeAt("content");        </script>    </head>    <body class="sapUiBody" role="application">        <div id="content"></div>    </body></html>

最初的成果,能看到自定义版本的 jQuery 曾经失效了:

更多Jerry的原创文章,尽在:"汪子熙":