成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ExtJS Grid Tooltip的3+1種實現(xiàn)方式總結(jié)

開發(fā) 前端
本文總結(jié)了ExtJS Grid Tooltip的幾種實現(xiàn)方法。ExtJS Grid Tooltip可以通過表頭提示,單元格提示,行提示以及自己手動添加等方式完成。本文參考了官方FAQ上提供的描述。

ExtJS Grid Tooltip實現(xiàn)之一:表頭提示

在2.2里面是設(shè)置ColumnModel.tooltip ,3.0則是Column. tooltip 如下:

  1. var grid = new Ext.grid.GridPanel({    
  2.   columns:[    
  3.     {header:'名稱',dataIndex:'name',tooltip:'對象名稱'},    
  4.     {header:'開始時間 - 結(jié)束時間 < br/>成功/失敗/成功率', dataIndex:'sucRate',tooltip:'成功/失敗/成功率'}    
  5.   ]    
  6. });  

ExtJS Grid Tooltip實現(xiàn)之二:單元格提示

1)使用Ext.QuickTips

在開始的時候就執(zhí)行Ext.QuickTips.init();

然后對需要提示的單元格,重寫renderer函數(shù),添加ext:qtitle , ext:qtip這2個屬性即可。

這個在官方的FAQ上有詳細描述: http://extjs.com/learn/Ext_FAQ_Grid#Add_ToolTip_or_Qtip

  1. //option 1    
  2. //========    
  3. renderer = function (data, metadata, record, rowIndex, columnIndex, store) {    
  4.     //build the qtip:    
  5.     var title = 'Details for ' + value + '-' + record.get('month') +    
  6.         '-' + record.get('year');    
  7.     var tip = record.get('sunday_events');    
  8.      
  9.     metadata.attr = 'ext:qtitle="' + title + '"' + ' ext:qtip="' + tip + '"';    
  10.      
  11.     //return the display text:    
  12.     var displayText = '< span style="color: #000;">' + value + '< /span>< br />' +    
  13.         record.get('sunday_events_short');    
  14.     return displayText;    
  15. };    
  16.      
  17. //option 2    
  18. //========    
  19. renderer = function (data, metadata, record, rowIndex, columnIndex, store) {    
  20.     var qtip = '>';    
  21.     if(data >= 0){    
  22.         qtip = " qtip='yeah'/>";    
  23.         return '< span style="color:green;"' + qtip + data + '%< /span>';    
  24.     }else if(data <  0){    
  25.         qtip = " qtip='woops'/>";    
  26.         return '< span style="color:red;"' + qtip + data + '%< /span>';    
  27.     }    
  28.     return data;    
  29. };    
  30.      
  31. //option 3    
  32. //========    
  33. var qtipTpl = new Ext.XTemplate(    
  34.     '< h3>Phones:< /h3>',    
  35.     '< tpl for=".">',    
  36.     '< div>< i>{phoneType}:< /i> {phoneNumber}< /div>',    
  37.     '< /tpl>'    
  38. );    
  39.      
  40. renderer = function (data, metadata, record, rowIndex, columnIndex, store) {    
  41.      
  42.     // get data     
  43.     var data = record.data;    
  44.      
  45.     // convert phones to array (only once)     
  46.     data.phones = Ext.isArray(data.phones) ?    
  47.         data.phones :     
  48.         this.getPhones(data.phones);    
  49.      
  50.     // create tooltip     
  51.     var qtip = qtipTpl.apply(data.phones);    
  52.      
  53.     metadata.attr = 'ext:qtitle="' + title + '"' + ' ext:qtip="' + tip + '"';    
  54.      
  55.     //return the display text:    
  56.     return data;        
  57. };   

2)使用ToolTip

官方也已經(jīng)給出方法:

http://extjs.com/forum/showthread.php?p=112125#post112125

http://extjs.com/forum/showthread.php?t=55690

以上給出的方法是可以讓一個grid里面的元素共享一個tooltip對象。一般用來做rowtip

不過3.0有更好的方式,如下:

ExtJS Grid Tooltip實現(xiàn)之三:行提示 RowTip

ExtJS3.0新增的方法,設(shè)置tooltip的delegate

  1. var myGrid = new Ext.grid.gridPanel(gridConfig);    
  2. myGrid.on('render'function(grid) {    
  3.     var store = grid.getStore();  // Capture the Store.    
  4.     
  5.     var view = grid.getView();    // Capture the GridView.    
  6.     
  7.     myGrid.tip = new Ext.ToolTip({    
  8.         target: view.mainBody,    // The overall target element.    
  9.     
  10.         delegate: '.x-grid3-row'// Each grid row causes its own seperate show and hide.    
  11.     
  12.         trackMouse: true,         // Moving within the row should not hide the tip.    
  13.     
  14.         renderTo: document.body,  // Render immediately so that tip.body can be referenced prior to the first show.    
  15.     
  16.         listeners: {              // Change content dynamically depending on which element triggered the show.    
  17.     
  18.             beforeshow: function updateTipBody(tip) {    
  19.                 var rowIndex = view.findRowIndex(tip.triggerElement);    
  20.                 tip.body.dom.innerHTML = "Over Record ID " + store.getAt(rowIndex).id;    
  21.             }    
  22.         }    
  23.     });    
  24. });   

ExtJS Grid Tooltip實現(xiàn)之四:其他方法?

監(jiān)聽GridView或Store的事件,然后通過rowSelector或getRow方法來遍歷,自己加tooltip... 這個方式請無視吧

【編輯推薦】

  1. JavaScript異步調(diào)用框架的鏈式實現(xiàn)
  2. JavaScript異步調(diào)用框架的jQuery風格鏈式調(diào)用
  3. JavaScript異步調(diào)用框架的代碼實現(xiàn)
  4. JavaScript異步調(diào)用框架用例設(shè)計
  5. JavaScript異步調(diào)用框架問題描述
責任編輯:yangsai 來源: 天豬部落閣
相關(guān)推薦

2016-08-19 08:50:12

SparkWordCountreduceByKey

2021-05-07 09:39:54

數(shù)據(jù)清洗方式

2020-12-10 15:14:33

信息安全新基建

2021-01-27 11:48:34

高可用系統(tǒng)Review

2023-02-27 22:03:06

數(shù)據(jù)庫內(nèi)存RocketMQ

2019-05-16 13:00:18

異步編程JavaScript回調(diào)函數(shù)

2015-12-03 09:59:00

網(wǎng)站構(gòu)建分析

2020-02-18 20:00:31

PostgreSQL數(shù)據(jù)庫

2021-09-02 11:49:41

基數(shù)算法技巧

2024-09-18 09:18:11

2022-08-05 08:27:05

分布式系統(tǒng)線程并發(fā)

2015-05-04 10:20:25

2019-01-31 08:15:38

物聯(lián)網(wǎng)農(nóng)業(yè)IoT

2017-09-05 10:20:15

2020-02-10 15:50:18

Spring循環(huán)依賴Java

2010-03-12 17:52:35

Python輸入方式

2021-11-05 21:33:28

Redis數(shù)據(jù)高并發(fā)

2010-08-13 13:25:53

Flex頁面跳轉(zhuǎn)

2014-12-31 17:42:47

LBSAndroid地圖

2021-06-24 08:52:19

單點登錄代碼前端
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产精品18hdxxxⅹ在线 | 国产欧美精品一区二区三区 | 午夜小视频在线观看 | 日韩电影免费观看中文字幕 | 国产91久久久久久久免费 | 中文字幕日韩欧美 | 中文字字幕一区二区三区四区五区 | 欧美日韩在线视频一区 | 激情婷婷成人 | 国产精品免费一区二区三区四区 | 逼逼网| 亚洲小说图片 | 国产精品久久久久久久久久 | 久在草 | 欧美在线视频一区二区 | 在线播放一区 | 人人干人人草 | 精品免费国产视频 | 成人夜晚看av | 久久久久国产 | 一区视频| 羞羞的视频在线观看 | 国产日韩电影 | 国产精品久久 | 国产一区二区 | 91精品综合久久久久久五月天 | 日韩在线| 精品久久中文 | 欧美一区二区综合 | 91麻豆精品国产91久久久更新资源速度超快 | 欧美一区二区三区免费电影 | 久草在线在线精品观看 | 久久只有精品 | 午夜精品一区二区三区在线观看 | 高清欧美性猛交xxxx黑人猛交 | 午夜影院在线免费观看视频 | 精品欧美一区二区三区久久久小说 | 日韩一级精品视频在线观看 | 黄色永久免费 | 国产精品成人一区二区 | 在线一区|