|
|
Log In | Not a Member? |
Contact ADC |
Appleは、スライダコントロールとして機能し、ユーザが選択できる値の範囲の描写に使用できるJavaScriptクラスを提供しています。AppleSliderというクラスであり、Mac OS X v10.4.3以降に含まれているApple Classのクラスです。
AppleSliderも含めて、すべてのApple Classの使用についての詳細は、“Apple Classの紹介”を参照してください。
Appleスライダに関する作業
HTMLにおけるAppleスライダ
CSSにおけるAppleスライダ
JavaScriptにおけるAppleスライダ
AppleSliderを使用するには、次のことを行う必要があります。
AppleSliderクラスを自分のHTMLファイルに含める。
HTMLでスライダを表す<div>要素を指定する。
onloadハンドラ、すなわちウィジェットがロードされると呼び出され、AppleSliderオブジェクトを作成するJavaScript関数を宣言する。
CSSを使ってスライダを配置する。
AppleSliderクラスを使ってJavaScriptでスライダを作成する。
デフォルトでは、AppleSliderはAppleによって提供されているアートワークを使ってスライダのさまざまなパーツを表現します。独自のアートワークを指定することもできます。
利用可能なスライダには、垂直方向と水平方向2つの種類があります。ウィジェットのデザインとコーディングを行う場合は、どちらのタイプのスライダを使うかを検討する必要があります。どちらもAppleSliderクラスのサブクラスであり、目的のタイプのスライダを作成するためにJavaScriptで使われます。
AppleSliderを宣言してJavaScriptでこれを使うためには、自分のウィジェットのHTMLファイルにこのクラスを含め、ウィジェットの構造内でスライダを表す<div>を指定し、ウィジェットのHTMLがロードされるときに呼び出されるonloadハンドラを用意します。このハンドラは、JavaScript内でAppleSliderを作成するために使われます。
まず、AppleSliderクラスを自分のメインのHTMLファイルに含める必要があります。Mac OS X v.10.4.3以前のバージョンとの下位互換性を計画している場合は、 “下位互換性のある使いかた”の指示に従い、次のパスを含めます。
<script type='text/javascript' src='AppleClasses/AppleSlider.js' charset='utf-8'/> |
重要: ウィジェットへのAppleSlider.jsファイルのコピーに加え、Imagesディレクトリを/System/Library/WidgetResources/からウィジェットのバンドルへコピーし、画像のパスへのすべての参照がローカルコピーを指すようにAppleSlider.jsを書き換える作業も必要です。パスは現在、次のように書かれています。
this.thumbPath = "file:///System/Library/WidgetResources/AppleClasses/Images/slide_thumb.png"; |
this.thumbPath = "file://AppleClasses/Images/slide_thumb.png"; |
ウィジェットの動作条件をMac OS X v.10.4.3以上にすることを計画している場合は、次のように、/System/Library/WidgetResources/の中の該当する場所にあるAppleSliderクラスを含めます。
<script type='text/javascript' src='/System/Library/WidgetResources/AppleClasses/AppleSlider.js' charset='utf-8'/> |
AppleSliderクラスを含めたあとは、スライダを表す<div>要素を宣言する必要もあります。
<body onload="setup();"> |
... |
<div id="mySlider"></div> |
... |
</body> |
通常は、HTMLファイルの<body>部分の中のどこかで<div>要素を使います。この<div>要素に必須の属性はidのみであり、スライダを配置するためにCSSによって使われ、スライダを作成するためにJavaScriptによって使われます。id属性を持つ要素にJavaScriptを使ってアクセスできるため、class属性よりもid属性のほうが必須です。
<body>タグ内のonloadハンドラの宣言にも注目してください。このハンドラは、ウィジェットのHTMLがロードされると呼び出され、 “JavaScriptおけるAppleスライダ”で説明するように、JavaScript内でAppleSliderオブジェクトを構成するために使用されます。
HTMLファイルにおいてスライダが正しく宣言されたので、次にこれらをCSSで配置する必要があります これには、対象要素の名前を持つスタイルと、使用するのが妥当と考えられるそのほかの配置パラメータを使う必要があります。
#mySlider { |
position:absolute; |
top: 20px; |
left: 20px; |
width: 100px; /* 垂直スライダの高さを使用 */ |
} |
ここでは、水平スライダに必要なwidth属性を指定しています。垂直スライダを使うことを計画している場合は、代わりにheight属性を指定します。
HTMLファイルでは、<body>タグの属性としてonloadヘッダを含めました。そのハンドラは、DashboardがウィジェットのHTMLファイルをロードすると呼び出され、AppleSliderサブクラスのコンストラクタを呼び出すために使われます。使用するスライダのタイプに応じて、AppleVerticalSliderまたはAppleHorizontalSliderのコンストラクタを呼び出します。コンストラクタは次のように定義されます。
水平スライダのコンストラクタ | 垂直スライダのコンストラクタ |
|---|---|
|
|
どちらのコンストラクタも次の2つのパラメータを受け取ります。すなわち、スライダを作成する場所を表すDOMオブジェクトと、スライダの値が変化すると呼び出されるハンドラです。DOMオブジェクトは、HTMLで定義し、CSSで配置した<div>です。水平スライダの場合、onloadハンドラコードは次のようになります。
var gMySlider; |
function setup() |
{ |
gMySlider = new AppleHorizontalSlider( |
document.getElementById("mySlider"), |
sliderChanged |
); |
} |
onchangedハンドラは、デベロッパによって提供される関数です。このハンドラは、スライダが変更されると呼び出され、引数を1つ受け取ります。ハンドラが呼び出されると、スライダの現在の値が渡されます。スライダの値は常に、0から1までの浮動小数点数です。
function sliderChanged(currentValue) |
{ |
// 渡されたcurrentValueを使って何か処理をする |
} |
setup()関数内で使われているグローバル変数のgMySliderに注目してください。この変数はAppleSliderオブジェクトへの参照を保持しており、スライダが作成されたあとはこれを使っていつでもスライダとやり取りすることができます。次のプロパティとメソッドを、やり取りに利用できます。
選択肢 | 型 | 説明 |
|---|---|---|
| プロパティ | 読み取り/書き込み。スライダが移動すると呼び出されるハンドラ。 |
| プロパティ | 読み取り/書き込み。スライダサムが移動している間にonchangedハンドラを呼び出すか( |
| プロパティ | 読み取り/書き込み。スライダコントロールを含んでいる |
| プロパティ | 読み取り専用。スライダの現在の値。 |
| プロパティ | 読み取り専用。スライダの高さまたは幅(ピクセル単位)。 |
| プロパティ | 読み取り専用。水平スライダのトラックの左端、または垂直スライダのトラックの上端に使われている現在の画像のパス。 |
| プロパティ | 読み取り専用。水平スライダに使われている場合は、 |
| プロパティ | 読み取り専用。スライダのトラックの中央に使われている現在の画像のパス。 |
| プロパティ | 読み取り専用。水平スライダのトラックの右端、または垂直スライダのトラックの下端に使われている現在の画像のパス。 |
| プロパティ | 読み取り専用。水平スライダに使われている場合は、 |
| プロパティ | 読み取り専用。スライダのサムに使われている現在の画像のパス。 |
| プロパティ | 読み取り専用。水平スライダに使われている場合は、 |
| メソッド | ウィジェットのインターフェイスとDOMからスライダを削除します。 |
| メソッド | スライダのコポーネントを再描画します。スライダの表示のいずれかの外観や状態を、プログラムによって変更する場合に使います。 |
| メソッド | スライダのサムを |
| メソッド | スライダの幅(水平方向の場合)または高さ(垂直方向の場合)をピクセル数で |
| メソッド | 水平スライダのトラックの左端の画像と幅(ピクセル単位)、または垂直スライダのトラックの上端の画像と幅(ピクセル単位)を設定します。 |
| メソッド | スライダのトラックの中央部分に使う画像を設定します。 |
| メソッド | 水平スライダのトラックの右端の画像と幅(ピクセル単位)、または垂直スライダのトラックの下端の画像と幅(ピクセル単位)を設定します。 |
| メソッド | 水平スライダのサムの画像と幅(ピクセル単位)、または垂直スライダのサムの画像と高さ(ピクセル単位)を設定します。 |
| メソッド | スライダの値を |
Last updated: 2006-08-07
|
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2007 Apple Inc. All rights reserved. | Terms of use | Privacy Notice |