OSS で利用できる機能
タイル マネージャー - TypeScript との連携
このサンプルは CTP 機能を使用しています。製品版では、API や動作が変更される場合があります。
このサンプルは、より大きい画面サイズのためにデザインされました。
モバイル デバイスで画面を回転、フル サイズ表示、またはその他のデバイスにメールで送信します。
このサンプルでは、リード タイルを定義する構成を持つタイル マネージャー コントロールを TypeScript で使用する方法を紹介します。
リード タイルは新しく選択されるタイルと交換します。タイルの上に配置されるタブで別の分類を選択できます。
コード ビュー
クリップボードへコピー
<!DOCTYPE html> <html> <head> <title></title> <!-- Ignite UI for jQuery Required Combined CSS Files --> <link href="http://cdn-na.infragistics.com/igniteui/2024.1/latest/css/themes/infragistics/infragistics.theme.css" rel="stylesheet" /> <link href="http://cdn-na.infragistics.com/igniteui/2024.1/latest/css/structure/infragistics.css" rel="stylesheet" /> <script src="http://ajax.aspnetcdn.com/ajax/modernizr/modernizr-2.8.3.js"></script> <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <script src="http://code.jquery.com/ui/1.11.1/jquery-ui.min.js"></script> <!-- Ignite UI for jQuery Required Combined JavaScript Files --> <script src="http://cdn-na.infragistics.com/igniteui/2024.1/latest/js/infragistics.core.js"></script> <script src="http://cdn-na.infragistics.com/igniteui/2024.1/latest/js/infragistics.lob.js"></script> <style type="text/css"> body { font-family: 'Segoe UI', 'Arial', 'Helvetica', 'sans-serif'; } ul { text-decoration: none; padding: 0; margin: 0; list-style: none; } .ui-igtile-maximized .ui-igtile-inner-container {overflow: hidden;} #car-tabs { margin: auto; } .dashboard { font-size: 0.85em!important; position: relative; height: 660px; } .dashboard img { width: 100%; } .dashboard figure { margin:0; } .dashboard figcaption { font-size: 1.1em; background-color: #454545; color: #fff; padding: 10px 0 10px 10px; } .dashboard .ui-igtile-maximized figcaption { background-color: #2cbdf9; -webkit-transition:0.5s; } .dashboard div ul { border: 1px solid #ececec; padding: 5px 5px 10px 5px; -webkit-transition:0.5s; } .dashboard div ul li:nth-child(n+2):before { content: "• "; color: #2cbdf9; } .dashboard div ul li:first-child { color: #2cbdf9; } #car-tabs.ui-tabs .ui-tabs-panel, #car-tabs.ui-tabs-nav, #car-tabs.ui-tabs .ui-tabs-nav li.ui-state-default { border: none; padding: 0; } #car-tabs.ui-tabs .ui-tabs-nav li.ui-state-active a { background-color: #2cbdf9!important; } #car-tabs.ui-tabs .ui-tabs-nav li.ui-state-default a { background-color: #95defc; } #car-tabs.ui-tabs .ui-tabs-nav li.ui-state-hover a { background-color: #6bd1fb; } #car-tabs.ui-tabs-anchor { text-shadow: none; color: #fff!important; } #car-tabs.ui-tabs-anchor:hover { text-decoration: underline; } #car-tabs.ui-tabs { border-radius: 0; } h1.hOne { margin: 0; clear: none; float: none; font-size: 2em; } </style> </head> <body> <h1 class="hOne">Infragistics 自動車販売代理店</h1> <h3>自動車メーカーを選択して参照します</h3> <div id="car-tabs"> <ul> <li><a href="#magarcedesDashboard">Magarcedes</a></li> <li><a href="#hoidaDashboard">Hoida</a></li> <li><a href="#pausheDashboard">Paushe</a></li> </ul> <div id="magarcedesDashboard" class="dashboard"></div> <div id="hoidaDashboard" class="dashboard"></div> <div id="pausheDashboard" class="dashboard"></div> </div> <script src="/TypeScriptSamples/tile-manager/typescript.js"></script> </body> </html>
/// <reference path="/js/typings/jquery.d.ts" /> /// <reference path="/js/typings/jqueryui.d.ts" /> /// <reference path="/js/typings/igniteui.d.ts" /> class Info { description: string constructor(_description: string) { this.description = _description; } } class CarData { name: string; picture: string; priceRange: string; extras: Info[]; constructor(_name: string, _picture: string, _priceRange: string, _extras: Info[]) { this.name = _name; this.picture = _picture; this.priceRange = _priceRange; this.extras = _extras; } addExtra(_extra) { this.extras.push(_extra); } } var Magarcedes: CarData[] = []; Magarcedes.push(new CarData("2013 LSL AMG", "/images/samples/tile-manager/car-dealership/shutterstock_139519967.jpg", "$199,500 - $206,000", [new Info("0-100 - 3.8 秒"), new Info("最大スピード: 317 km/h")])); Magarcedes.push(new CarData("2013 363 AMG", "/images/samples/tile-manager/car-dealership/shutterstock_38284540.jpg", "$57,130 - $61,430", [new Info("0-60 - 4.4 秒"), new Info("最大スピード: 250 km/h")])); Magarcedes.push(new CarData("2013 T350", "/images/samples/tile-manager/car-dealership/shutterstock_25369924.jpg", "$47,542 - $51,120", [new Info("4MATIC 四輪駆動"), new Info("0-60 - 5.5 秒"), new Info("3.5l v6 エンジン")])); Magarcedes.push(new CarData("2013 500S", "/images/samples/tile-manager/car-dealership/shutterstock_4417342.jpg", "$92,350 - $212,000", [new Info("ナイトビュー アシスト"), new Info("駐車距離ヘルパー")])); Magarcedes.push(new CarData("2013 M350L", "/images/samples/tile-manager/car-dealership/shutterstock_4028761.jpg", "$47,681 - $51,270", [new Info("3.0L BlueTEC ディーゼル エンジン v6 エンジン"), new Info("4MATIC 四輪駆動")])); Magarcedes.push(new CarData("2013 CSL", "/images/samples/tile-manager/car-dealership/shutterstock_2564520.jpg", "$74,500 - $84,556", [new Info("4.6L v8 エンジン"), new Info("0-60 - 5.05 秒")])); var Hoida: CarData[] = []; Hoida.push(new CarData("2013 Candy", "/images/samples/tile-manager/car-dealership/shutterstock_57034834.jpg", "$21,661 - $29,404", [new Info("ガソリン I4 2.5L エンジン"), new Info("高速道路の燃料効率 35 mpg")])); Hoida.push(new CarData("2013 RA4V 4WD", "/images/samples/tile-manager/car-dealership/shutterstock_117299389.jpg", "$23,301 - $28,232", [new Info("四輪駆動"), new Info("高速道路の燃料効率 29 mpg")])); Hoida.push(new CarData("2013 Coralla", "/images/samples/tile-manager/car-dealership/shutterstock_32589022.jpg", "$16,191 - $20,297", [new Info("ガソリン I4 1.8L エンジン"), new Info("高速道路の燃料効率 34 mpg")])); Hoida.push(new CarData("2013 Pruis C", "/images/samples/tile-manager/car-dealership/shutterstock_134383163.jpg", "$19,058 - $23,163", [new Info("ガソリン/電力 I4 1.5L エンジン"), new Info("高速道路の燃料効率 46 mpg")])); Hoida.push(new CarData("2013 Cruiser", "/images/samples/tile-manager/car-dealership/shutterstock_60821281.jpg", "$73,676 - $73,676", [new Info("ガソリン V8 5.7L エンジン"), new Info("四輪駆動")])); Hoida.push(new CarData("2013 TLC", "/images/samples/tile-manager/car-dealership/shutterstock_27395866.jpg", "$25,566 - $47,651", [new Info("ガソリン V8 5.7L エンジン"), new Info("高速道路の燃料効率 17 mpg")])); var Paushe: CarData[] = []; Paushe.push(new CarData("2013 CST", "/images/samples/tile-manager/car-dealership/shutterstock_38288989.jpg", "$39,095 - $59,090", [new Info("利用可能な 四輪駆動"), new Info("利用可能な タッチ画面の音声認識付きポップアップ ナビゲーション"), new Info("レザー シート"), new Info("リモート起動")])); Paushe.push(new CarData("2013 CST-V", "/images/samples/tile-manager/car-dealership/shutterstock_32949850.jpg", "$64,515 - $74,770", [new Info("0-100 - 4.0 秒"), new Info("左右促進を測定する G メーター")])); Paushe.push(new CarData("2013 ECS", "/images/samples/tile-manager/car-dealership/shutterstock_7391134.jpg", "$63,170 - $82,875", [new Info("暖房/冷房付き前座席"), new Info("利用可能な マグネット サスペンション システム")])); Paushe.push(new CarData("2013 AST", "/images/samples/tile-manager/car-dealership/shutterstock_23082346.jpg", "$39,095 - $59,090", [new Info("利用可能な 新車 272 HP 2.0L ターボ エンジン"), new Info("利用可能な ナビゲーション")])); Paushe.push(new CarData("2013 SXR Crossover", "/images/samples/tile-manager/car-dealership/shutterstock_134383139.jpg", "$37,330 - $58,220", [new Info("利用可能な UltraView サンルーフ"), new Info("利用可能な 四輪駆動")])); Paushe.push(new CarData("2013 CST-V Wagon", "/images/samples/tile-manager/car-dealership/shutterstock_117299326.jpg", "$64,515 - $75,345", [new Info("高さメモリー付きパワー リフトゲート"), new Info("バックアップ カメラ")])); var Cars: CarData[][] = []; Cars.push(Magarcedes); Cars.push(Hoida); Cars.push(Paushe); $(function () { var activated: boolean[] = [false, false, false, false], options: IgTileManager = { columnWidth: 210, columnHeight: 210, marginLeft: 10, marginTop: 10, dataSource: Cars, items: [ { rowIndex: 0, colIndex: 0, rowSpan: 2, colSpan: 2 }, { rowIndex: 0, colIndex: 2, rowSpan: 1, colSpan: 1 }, { rowIndex: 1, colIndex: 2, rowSpan: 1, colSpan: 1 }, { rowIndex: 2, colIndex: 0, rowSpan: 1, colSpan: 1 }, { rowIndex: 2, colIndex: 1, rowSpan: 1, colSpan: 1 }, { rowIndex: 2, colIndex: 2, rowSpan: 1, colSpan: 1 } ], maximizedTileIndex: 0, maximizedState: '<figure><figcaption>${name}</figcaption><img src="${picture}" title="${Name}" alt="error" /></figure><ul><li>価格: ${priceRange}</li>' + '{{each ${extras} }}<li>${extras.description}</li>{{/each}}</ul>', minimizedState: '<figure><figcaption>${name}</figcaption><img src="${picture}" title="${Name}" alt="error" />' }; // First time initialization of the tab that will be shown on page load options.dataSource = Cars[0]; activated[0] = true; $('#magarcedesDashboard').igTileManager(options); var tabOptions: JQueryUI.TabsOptions = { activate: function (event, ui) { var index = ui.newTab.index(); if (!activated[index]) { options.dataSource = Cars[index]; ui.newPanel.igTileManager(options); activated[index] = true; } else { ui.newPanel.igTileManager('reflow'); } } } $('#car-tabs').tabs(tabOptions); });