国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css

來源:懂視網 責編:小采 時間:2020-11-27 15:59:18
文檔

ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css

ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css_WEB-ITnose:前段時間,公司里做個新玩意兒,我們開發組選用ExtJs4.2.1Mvc模式,開發過程中遇到了很多問題(避免不了不專業的需求人員提出各種一拍腦瓜子就決定的需求),經過查看api都一一解決,現在把開發過程中遇到的且已解決的問題,記錄下來,供以后查看,也供新接觸
推薦度:
導讀ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css_WEB-ITnose:前段時間,公司里做個新玩意兒,我們開發組選用ExtJs4.2.1Mvc模式,開發過程中遇到了很多問題(避免不了不專業的需求人員提出各種一拍腦瓜子就決定的需求),經過查看api都一一解決,現在把開發過程中遇到的且已解決的問題,記錄下來,供以后查看,也供新接觸

  前段時間,公司里做個新玩意兒,我們開發組選用ExtJs4.2.1Mvc模式,開發過程中遇到了很多問題(避免不了不專業的需求人員提出各種一拍腦瓜子就決定的需求),經過查看api都一一解決,現在把開發過程中遇到的且已解決的問題,記錄下來,供以后查看,也供新接觸ExtJs的網友借鑒,描述不到位或有錯誤的地方,望指正!(注:下文中提到的方法均為ExtJs庫中的方法,并非js原生)

  因為整個項目都是運用的ExtJs的MVC,所以項目中基本都是js文件(自定義的js文件接近100個,更不用說ExtJs的庫了),導致頁面加載很慢,性能問題就不提了,這是個老大難問題!

問題1:

  關于Grid頁面滾動的問題,現在有一個Ext.grid.Panel,在這個grid中有兩類數據,一類是可用數據,另一類是禁用數據,可用數據正常顯示,禁用的則灰色顯示(灰色顯示利用grid的viewConfig的getRowClass屬性可以做到,seems like this:

  getRowClass : function(record,rowIndex,rowParams,store){
return (record.get('youxiao1') == 0 || record.get('isedit') == 0) ? 'row-valid' :' ';
}

);

在這個grid中的兩類數據是可以編輯的,當編輯后,為了實現兩類數據不混亂顯示,于是就用到了store.sort()方法,這個方法會導致grid內容出現滾動,用戶不希望在編輯grid時總是滾來滾去,于是叫我們想想辦法,于是我用了兩天時間來完善這個需求(這過程中,使用了3中方式來實現,第三種方式最完美):

  方式一:直接使用focusRow( row, [delay] ),讓某一行聚焦;

  方式二:獲得當前編輯行和grid中第一行的record,然后通過getOffsetsTo()方法計算這兩行記錄在grid的垂直距離是多少,然后讓滾動條滾動到這個距離值的位置,that's all!這個邏輯都在grid的viewConfig配置中實現,然后在編輯行后通過grid.getView().XXX()調用。在viewConfig中添加以下兩個方法:

//滾動Grid到指定的Record
scrollToRecord:function(record){
var index = this.ownerCt.getStore().indexOf(record);
this.scrollToRow(index);
},

//滾動Grid到指定的行
scrollToRow:function(rowIndex){
var firstRow = Ext.get(this.getNode(0));   //grid中第一行
var row = Ext.get(this.getNode(rowIndex)); //當前編輯行
var distance = row.getOffsetsTo(firstRow)[1]; //獲取垂直距離
//this.scroller.dom.scrollTop = distance;   this.scroller在Ext4.x中似乎沒有這個屬性,它只存在于3.x?
this.getEl().setScrollTop(distance);  //設置滾動條
}

  方式三:雖然前兩種方式也能滿足需求,但是不完美,現在說說最完美的解決方案,也是最簡單的。

  在編輯行之前,先獲得當前滾動條的位置:var scrollTop = grid.getView().getEl().getScrollTop(); //排序之前,grid滾動條的scrollTop

  在編輯結束之后,再將滾動條滾回最開始的位置:grid.getView().getEl().setScrollTop(scrollTop);

如果我們的Grid中有固定列,就是有些column設置了locked:true這個屬性的話,就不能用上面的方法,將會無效,因為有locked的grid的view不能直接獲取到,它分為lockedView、normalView,在進行滾動時,要兩個view都進行滾動,否則會出現表格錯位的現象哦~~,知道這點以后,其他設置就和上面的一直了!

問題1完畢!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css

ExtJs4.2.1Grid行編輯后,頁面滾動的解決方案_html/css_WEB-ITnose:前段時間,公司里做個新玩意兒,我們開發組選用ExtJs4.2.1Mvc模式,開發過程中遇到了很多問題(避免不了不專業的需求人員提出各種一拍腦瓜子就決定的需求),經過查看api都一一解決,現在把開發過程中遇到的且已解決的問題,記錄下來,供以后查看,也供新接觸
推薦度:
標簽: 編輯 解決 頁面
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 亚洲va欧美ⅴa国产va影院 | 拍真实国产伦偷精品 | 欧美一区二区精品 | 欧美亚洲自拍偷拍 | 亚洲欧洲日韩在线 | 欧美视频免费在线观看 | 欧美日韩亚洲一区二区三区在线观看 | 亚洲欧美激情精品一区二区 | 国偷自产一区二区免费视频 | 欧美色综合图区 | 亚洲一区二区三区免费观看 | 亚洲综合精品一区二区三区中文 | 亚洲色图欧美 | 国产日韩欧美一区二区三区视频 | 精品欧美一区二区三区在线观看 | 欧美人伦 | 国产在线精品一区二区高清不卡 | 国产精品一区二区久久精品 | 日本激情一区二区三区 | 国产精品久久久久久久久免费 | 精品一区二区在线 | 91在线一区二区 | 天码毛片一区二区三区入口 | 伊人久久成人成综合网222 | 特级全黄一级毛片视频 | 久久精品国产亚洲精品2020 | 免费在线观看一区二区 | 欧美亚洲日本国产 | 亚洲国产福利 | 九九国产精品九九 | 亚洲欧洲在线观看 | 日本韩国一区二区 | 国产高清一区 | 99久久精品国产亚洲 | 亚洲一区影院 | 久久亚洲伊人中字综合精品 | 亚洲国产成人精品一区二区三区 | 亚欧成人毛片一区二区三区四区 | 国产特黄| 国产一区二区成人 | 国产日韩欧美视频 |