この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

モバイルとデスクトップの両方で機能する Visualforce ページの作成

実行されるコンテキストに適合するコードを記述して、Salesforce1 アプリケーションと Salesforce フルサイトの両方で有効に機能する Visualforce ページを作成します。

ナビゲーションの管理」で学習したように、Salesforce1 はさまざまなナビゲーションコントロールとイベントを処理するフレームワークを提供します。sforce オブジェクトは Salesforce1 内のページにのみ挿入されるため、Salesforce フルサイト上で実行しているときに Visualforce ページでこのフレームワークを利用できません。つまり、Salesforce1 アプリケーションと Salesforce フルサイトの両方で共有されるページの場合、sforce オブジェクトが利用可能なときはこれを使用し、利用可能でないときは標準の Visualforce ナビゲーションを使用するようにコードを記述します。

たとえば、注文を簡易作成する @RemoteAction メソッドから JavaScript Remoting 要求が返った後に実行される簡単な JavaScript を次に示します。このコードは、カスタムアクションとして使用される Visualforce ページを元にしています。カスタムアクションがこのコードを Salesforce1 アプリケーションのパブリッシャーおよび Salesforce フルサイトのパブリッシャーメニューに追加します。このコードは両方の場所で機能する必要があります。コードの意図は、注文した取引先の詳細ページへの移動です。

if ステートメントによって、sforce オブジェクトが利用可能かつ有用であるかどうかが確��されます。これは、ページが Salesforce1 内で実行されている場合のみ true です。sforce が利用可能な場合、Salesforce1 ナビゲーション管理システムは取引先の詳細ページへの移動に使用されます。

sforce オブジェクトが利用可能でない場合、これを使用する試みは JavaScript エラーとなり、ナビゲーションは行われません。その代わりに、取引先の詳細ページの URL を返す Visualforce 式を使用して、コードがウィンドウの URL を設定します。ナビゲーションイベントがフレームワークによって失われるため、Salesforce1 でこの方法を使用するのは好ましくないかもしれませんが、通常の Visualforce では必要になります。

さまざまな種類のオブジェクトおよびアクションの URL を作成する $Action グローバル変数の使用方法についての詳細は、Visualforce 開発者ガイド』の付録「グローバル変数」を参照してください。