バージョン

2012 Volume 1 の既知の問題と制限

トピックの概要

目的

このトピックでは、Ignite UI for jQuery™ ライブラリの既知の問題と制限の一覧を示し、個々のコントロールの既知の問題点に関する参照先トピックを示します。

このトピックの内容

このトピックは、以下のセクションで構成されます。

2012 Volume 1 の既知の問題と制限

概要

以下の表に、Ignite UI for jQuery 2012 Volume 1 リリースの既知の問題と制限事項の概要を示します。各コントロールの既知の問題のトピックに、既知の問題および考えられる回避策の詳細が説明されています。

凡例:

回避策
既知の回避策はありません
修正予定です
機能 説明 状態
igLoader で igEditor のロケールを動的に変更できない igLodaer を使用する場合にエディターの地域設定をオンザフライで変更できません。
JavaScript および CSS リソースの名称と構造が変更された ライブラリの構造と多くのファイルの名前が変更されました。
igTemplate の制約 入れ子になった {{each}} テンプレートはサポートされません。
グリッドとタッチのサポート タッチ ポイントが特定の UI 要素上をスライドするときグリッドとその機能の動作が一致しないことがあります。
特定の状況で入力引数 ui.groupedColumns が空になることがある 列を GroupBy 領域にドラッグしてグループ化すると groupedColumnsChanged イベントの ui.groupedColumns 入力引数が空になります。
Android 4.* デバイスでグリッドの group-by モーダル ダイアログでスクリーン タップが誤って解釈される Android 4.* を使用したタッチ デバイスでは、階層グリッドで Group By モーダル ダイアログのドロップダウンのタップは、多くの場合モーダル ダイアログの背後のグリッド セルに作用します。
階層グリッドにおけるリモート グループ化の制限事項 リモート GroupBy では、複数のレイアウト (またはルート グリッド) の列のグループ化が機能しません。
財務シリーズ チャートでは先頭の項目と最後の項目が半分切れた状態で表示される 財務シリーズにおいて、先頭と最後の項目はチャートのビュー上にすべてが表示されず、半分にカットされた状態でプロットされます。
軸範囲を変更するとチャート アニメーションが無効になる チャートの Motion Framework を使用しデータを更新した場合、Y 軸の範囲が変更され、チャート アニメーションはすべて無効となり、新しいデータはモーションのエフェクトがまったくない形で即座に表示されます。
ページ上のカスタム JavaScript コードのあとに MVC Loader と MVC ヘルパー生成コードが実行する どのコントロールの MVC Loader と MVC ヘルパーでも MVC ビューで使用した場合、それらが生成する JavaScript コードは通常 document.ready() または window.ready() イベントからのカスタム ページ設定コードのあとに実行されます。
Infragistics ASP.NET と Ignite UI for jQuery のドキュメント エンジンの併用時に発生する問題 - 回避策 Infragistics ASP.NET と Ignite UI for jQuery のドキュメント アセンブリを併用すると、名前空間の競合による例外が発生します。
igEditor のスタイル設定 HTML 要素のレイアウトは修正され、丸みのある角が、ボタンだけでなくエディター全体で描画されます。
igEditor のスピン ボタン スピン ボタンは水平方向に描画されます。
igEditor のレンダリングの失敗 基本要素が TD の場合、レンダリングは失敗することがあります。
行テンプレートなしで igGridHiding を使用できない igGridHiding™ は、行テンプレートを使用している場合は列を非表示にできません。
igGridGroupBy および autoGenerateColumns を True に設定すると、他の列のグループ化が妨げられる グリッド コントロールにいくつかの列が明示的に定義されており、autoGenerateColumnstrue に設定されていると、初期化時に列をグループ化すると、ランタイムに他の列のグループ化が妨げられます。
フラット グリッドの MVC ヘルパー構成 すべてのグリッドは、グリッドの MVC ヘルパーによって、igHierarchicalGrid™ として生成されます。
グリッドの列幅 一部の列の幅をパーセンテージで定義し、その他をピクセルで定義する (またはまったく定義しない) ことはできません。
Microsoft Internet Explorer® 7 におけるヘッダーおよびフッター要素のグリッド レイアウトの問題 グリッド幅が指定されていないと、ヘッダーおよびフッター要素は、Microsoft Internet Explorer® 7 のグリッドよりも短く描画されます。
グリッド API コールが、DIV 要素と共に予想通りに機能しない グリッドが DIV 要素からインスタンス化されている場合、そのグリッドの機能に対する API コールは予想通りに機能しません。
iOS でのセル選択が適切に動作しない igGrid をスクロールしたい場合、まずセルをタップしてから、特定の方向にスワイプします。jQuery mobile がイベントを提示する方法によって、iOS および Android で igGrid のスクロールには違いがあります。
垂直スクロールによって、ダイアログがレコードの背後に表示される igGrid を Android のバージョン 4.0.2 で実行しており、igGrid に垂直スクロールがある場合、ポップアップ/ダイアログはすべてレコードの背後に表示されます。
Firefox では列幅を設定していないと igGrid 列のサイズを正しく変更できない。 Firefox のバグにより、列幅が設定されていないと、igGrid 列を適切にサイズ変更できません。
Firefox では列幅をパーセンテージで設定していると igGrid 列のサイズを正しく変更できない Firefox のバグにより、列幅をパーセンテージで設定すると、列を適切にサイズ変更できません。
MVC Razor レイアウト ビューでは、 MVC Loader が正常に機能しない MVC Loader は、MVC Razor レイアウト ビューに含まれるとき実際のビューのコントロールより先に初期化できません。

igLoader で igEditor のロケールを動的に変更できない - ソリューション

igLodaer を使用する場合にエディターの地域設定をオンザフライで変更できません。

地域オプションを変更するには、ポストバックが必要です。別の回避策としては、エディター コントロールを破棄してローダーを呼び出し、別のロケールでロードしてコントロールを作り直す方法があります。

JavaScript および CSS リソースの名称と構造が変更された

製品を使いやすくするために JavaScript および CSS ファイルの構造が変更され、ファイルの名称が変更されました。

: これは最新版での変更です。

新しいリソース構造と名称に適応するには、script および link タグによる静的なリソースのロードの代わりに新しい igLoader コントロールを使用する方法を推奨します。

igTemplate の制約

入れ子になった {{each}} テンプレートはサポートされません。

グリッドとタッチのサポート - 解決策

スタイラスが特定の UI 要素上をスライドするときグリッドとその機能の動作が一致しないことがあります。

スライドが正しい UI 要素上をスクロールするよう js\modules\infragistics.ui.scroll.js ファイルを明示的に参照する必要があります。

特定の状況で入力引数 ui.groupedColumns が空になることがある - 回避策

列を GroupBy 領域にドラッグしてグループ化すると groupedColumnsChanged イベントの ui.groupedColumns 入力引数が空になります。

ui.groupedColumns 配列は、ルート レベルのグループ化した列のみ表示します (Group By によるフラット グリッドにおけるフラット グリッドとして振る舞うかのように)。すべてのグループ化した列が必要な場合、API から groupByColumns() 関数を使用します。これは、すべての子グリッドを再帰的に処理し、すべてのレイアウトのグループ化列を合計します。

Android 4.* デバイスでグリッドの group-by モーダル ダイアログでスクリーン タップが誤って解釈される - ソリューション

Android 4.* を使用したタッチ デバイスでは、階層グリッドで Group By モーダル ダイアログのドロップダウンのタップは、多くの場合モーダル ダイアログの背後のグリッド セルに作用します。

解決策としては modalDialogDropDownWidthmodalDialogDropDownAreaWidth の値を変更して、モーダル ダイアログのドロップダウンにレイアウト ツリー全体が表示されるようにするか、もしくは上記のプロパティ値を null に設定しておくという方法が考えられます。

階層グリッドでリモート グループ化が制限される - ソリューション

リモート GroupBy では、複数のレイアウト (またはルート グリッド) の列のグループ化が機能しません。

2 つの解決方法があります。

  1. 階層グリッド全体に対してローカル GroupBy を使用してください。これでこの問題を完全に回避できます。

  2. リモート GroupBy を使用する場合、1 つのレイアウト (またはルート グリッド) の列のみグループ化します。

財務シリーズ チャートでは先頭の項目と最後の項目が半分切れた状態で表示される

財務シリーズでは、先頭の項目と最後の項目はチャート ビューに全体が表示されず、半分切れた状態でプロットされます。

将来リリースでこの問題を解決するデータ チャートの新機能が導入されます。

軸範囲を変更するとチャート アニメーションが無効になる - 解決策

チャートの Motion Framework を使用していてデータの更新により Y 軸範囲が変更された場合、すべてのチャート アニメーションは無効になり新しいデータがモーション効果なしで直ちに表示されます。

この問題の解決方法としては、チャート上でY軸の適切な範囲を選択してそれに応じて minimumValuemaximumValue オプションを設定します。これにより軸範囲の変更を防ぎます。

MVC ヘルパー生成コードと MVC ローダーがカスタムの JavaScript ページ設定コードのあとに実行される - 解決策

どのコントロールの MVC Loader と MVC ヘルパーでも MVC ビューで使用した場合、それらが生成する JavaScript コードは document.ready() または window.ready() イベントに入れられたカスタム ページ設定コードのあとに実行されます。(これは、コントロールがページの本文で描画され、スクリプト コードは通常先頭部分に入れられるためです。)MVC ヘルパー コードが描画したコントロールをカスタム コードが参照する場合、コントロールがまだ存在しないため失敗する可能性があります。これはタイミングの問題で、MVC Loader がどれだけ速く必要なリソースをロードするかに依存します。

解決方法としては、dataBound など、コントロール初期化シーケンスの最後のイベントにアタッチし、コントロールのすべての JavaScript コードをイベント ハンドラーから実行します。あるいは、以下のような内容で MVC ヘルパーのあとに短い script ブロックを追加することができます。

JavaScript の場合:

$.ig.loader(function () {
    customControlLogic();
});

ここで、customControlLogic() 関数がすべてのカスタム コードを扱います。これにより、コントロールに影響するコードは必ずコントロールをインスタンス化したあと実行されます。

Infragistics ASP.NET と Ignite UI for jQuery のドキュメント エンジンの併用時に発生する問題 - 回避策

Infragistics ASP.NET と Ignite UI for jQuery のドキュメント アセンブリを併用すると、名前空間の競合による例外が発生します。

この問題を解決するには、アプリケーションで Infragistics ASP.NET のドキュメント アセンブリと Ignite UI for jQuery のドキュメント アセンブリのいずれか一方を参照します。これらのアセンブリ内のドキュメント ライブラリは同じで、どちらを使用してもかまいません。

igEditor のスタイル設定 - 回避策

HTML 要素のレイアウトは修正され、丸みのある角が、ボタンだけでなくエディター全体で描画されます。

アプリケーションは、カスタム CSS を提供、またはデフォルトの igEditor CSS クラスをオーバーライドすることによって、丸みのある角を無効にすることがあります。

igEditor のレンダリングの失敗 - 回避策

基本要素が TD の場合、レンダリングは失敗することがあります。

アプリケーションは、基本要素が TD の場合、親要素の幅を制限してはいけません。あるいはアプリケーションは、TD 要素の実際の幅が igEditor コントロールの幅より小さいことを確認する必要があります。親要素は、親テーブルであるだけでなく、DOM 階層の親のチェーン全体でもあります。

行テンプレートなしで igGridHiding を使用できない - 解決策

行テンプレートを使用しているときには一部の列を非表示にすることはできないようになっています。

この問題を解決するには、igGridHiding コントロールを使用する代わりに、行テンプレートから、非表示にするしたい列のセルの定義を省略します。

igGridGroupBy と autoGenerateColumns を True に設定すると、他の列をグループ化できなくなる - 回避策

グリッド コントロールにいくつかの列が明示的に定義されており、autoGenerateColumns が true に設定されていると、初期化時に列をグループ化すると、ランタイムに他の列のグループ化が妨げられます。

autoGenerateColumns オプションの既定値は true であるため、初期化時に列をグループ化する予定であれば、それらを明示的に定義しておく必要があります。それよりも、グリッドに入れたい列をすべて定義し、autoGenerateColumns を false に設定しておく方が良いでしょう。

フラット グリッドの MVC ヘルパー構成 - ソリューション

すべてのグリッドは igHierarchicalGrid として生成されます。

グリッド ヘルパーの AutoGenerateLayouts(false) メソッドを引数 false で明示的に呼び出す必要があり、グリッドの MVC ヘルパーがフラット グリッドを生成します。

グリッドの列幅の問題 - 回避策

一部の列の幅をパーセンテージで定義し、その他をピクセルで定義する (またはまったく定義しない) ことはできません。

すべての列幅をひとつの測定単位 (パーセンテージまたはピクセル) で定義します。2 つを混在させてはいけません。

Microsoft Internet Explorer® 7 のヘッダー要素とフッター要素のグリッド レイアウト問題 - 解決策

グリッド コントロールに幅が定義されていない場合、そのヘッダーおよびフッター要素 (キャプション、ページャー、group-by 領域など) は、Microsoft Internet Explorer® 7 内のレコード テーブルよりも小さい幅で描画されます。

この問題を解決するには、グリッドの幅を明示的に定義します。

DIV 要素ではグリッドの API 呼び出しが期待どおりに機能しない - 解決策

グリッドが DIV 要素からインスタンス化されている場合、そのグリッドの機能に対する API コールは予想通りに機能しません。

グリッドの機能の API への呼び出しは、各機能が実際に関連付けられているテーブル ([gridElementId]_table) に依存します。グリッドが id 属性 「grid1」 の DIV にバインドされている場合、そのテーブルを参照する最も簡単な方法は、以下に示す、グリッドの id() または widget() API メソッドを使用することです。

JavaScript の場合:

$("#" + $("#grid1").igGrid("id")).igGridPaging("option", "pageSize", 2)

または

JavaScript の場合:

$("#grid1").igGrid("widget").igGridPaging("option", "pageSize", 10)

iOS でのセル選択が適切に動作しない

igGrid をスクロールしたい場合、まずセルをタップしてから、特定の方向にスワイプします。jQuery mobile がイベントを提示する方法によって、iOS および Android で igGrid のスクロールには違いがあります。iOS でセルを選択すると、そのセルを選択解除できません。同時に、igGrid が Android オペレーティング システムでスワイプされると、セルが選択されません。

縦スクロールするとレコードの背後にダイアログが表示される - 解決策

igGrid を Android のバージョン 4.0.2 で実行しており、igGrid の垂直スクロールが有効な場合、ポップアップ/ダイアログはすべてレコードの背後に表示されます。これは、インデックスまたは CSS 規則として設定したものに関係なく、別のスクロール可能な div に配置されたすべての HTML div 要素は実際、スクロール可能な div の背後にあるという事実によるものです。

この問題を修復するには、Mdernizr JavaScript ライブラリの最新の安定バージョンを参照するとともにインフラジスティクス igScroll™ ウィジェットを組み込む必要があります。

Firefox で、列幅が設定されていないと、igGrid 列を適切にサイズ変更できない

Firefox のバグにより、列幅が設定されていないと、igGrid 列を適切にサイズ変更できません。これは、colgroup 内の 2 番目の col 要素のサイズ変更に関連する問題です。Firefox のバグに関する詳細情報は、バグ スレッド を参照してください。

Firefox では列幅をパーセンテージで設定していると igGrid 列のサイズを正しく変更できない - 回避策

Firefox のバグにより、列幅をパーセンテージで設定すると、列を適切にサイズ変更できません。これは、colgroup 内の 2 番目の col 要素のサイズ変更に関連する問題です。Firefox のバグに関する詳細情報は、バグ スレッド を参照してください。

テーブルのサイズを変更する前に、グリッド テーブル コンテナーの高さを削除し、サイズ変更の完了後に高さを元に戻す必要があります

MVC Razor レイアウト ビューでは、 MVC Loader が正常に機能しない - ソリューション

任意のコントロールの MVC ヘルパーは、MVC Razor アプリケーションのレイアウト ページに MVC Loader が含まれるとき適切な Loader コードを提供しません。それらは単に通常の jQuery $(function() { }) (document.load) 構文を使用します。これは、MVC Razor アプリケーションでのみ発生し、マスター ページを持つ MVC ASPX ビューではこの問題は発生しません。

その理由は、特定のビューが描画されたあとレイアウト ビューの処理と実行が行われ、ローダーは描画されるビューより前に初期化される機会がないためです。

解決方法としては、アプリケーションの MVC Razor レイアウト ページに MVC Loader を入れずに各特定ビューに入れます。

関連コンテンツ

トピック

このトピックの追加情報については、以下のトピックも合わせてご参照ください。

  • igGrid の既知の問題: このトピックでは、igGrid™ コントロールに固有の既知の問題に関する情報を提供します。

  • igHierarchicalGrid の既知の問題点: このトピックでは、igHierarchicalGrid™ コントロールに固有の既知の問題に関する情報を提供します。

  • igCombo の既知の問題: このトピックでは、igCombo™ コントロールに固有の既知の問題に関する情報を提供します。

  • igDataSource の既知の問題点: このトピックでは、igDataSource™ コントロールに固有の既知の問題に関する情報を提供します。

  • igEditor の既知の問題点: このトピックでは、igEdtor™ コントロールとその子孫に固有な既知の問題点に関する情報を提供します。

  • igRating の既知の問題点: このトピックでは、igRating™ コントロールに固有の既知の問題に関する情報を提供します。

  • igTree の既知の問題: このトピックでは、igTree™ コントロールに固有の既知の問題に関する情報を提供します。

  • igUpload の既知の問題点: このトピックでは、igUpload™ コントロールに固有の既知の問題に関する情報を提供します。

  • igVideoPlayer の既知の問題点: このトピックでは、igVideoPlayer™ コントロールに固有の既知の問題に関する情報を提供します。

  • igDataChart の既知の問題: このトピックでは、igDataChart™ コントロールに固有の既知の問題に関する情報を提供します。

オンラインで表示: GitHub