私の CRM Dynamics 365 ソリューションには、Web リソース A が埋め込まれたフォームがあります。この Web リソース A は、 を使用してポップアップ ウィンドウで別の Web リソース B を開きますwindow.open
。もちろん、オープニングは を使用して行うこともでき Xrm.Utility.openWebResource
ます。
webresource B で jQuery を利用したいと考えています。CRM 自体が jQuery をいくつかのバージョンでロードしていることを認識しています。これは、ネットワーク リクエストを監視し、jquery をフィルタリングするときに簡単に見つけることができます。
問題は、webresource B が jQuery または $ 変数に「アクセス」できないことです。問題は、jQuery を使用するために何をすることをお勧めするかです。考えられる解決策のリストに優先順位を付けました。
- 独立したバージョンの jQuery を使用して Web リソースを読み込む
- 思いつかなかった選択肢
- CDN から読み込む
- 読み込まれたすべてのスクリプトを jQuery で探し、URL を webresource B に渡して、それ自体で読み込むことができるようにします (ほぼハック)。
- jQuery を避け、vanilla JS を使用する
更新: jQuery を使用する主な理由は、ポップアップ ウィンドウのサイズに応じて webresource B を表示するポップアップ ウィンドウに埋め込まれた iframe (ランダムなコンテンツを含む) のサイズを簡単に変更することでした。
jQuery を完全に廃止し、代わりに CSS を使用することにしました。私の解決策はこれになり、Google Chrome、Windows Edge、および Internet Explorer 11 でうまく機能します。
#externalframe {
width: 100%;
height: 100%;
display: block;
float: left;
}