亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rico.js

?? grails用戶使用指南
?? JS
?? 第 1 頁 / 共 5 頁
字號:
   initialize: function(e1, e2, start, end, duration, steps, options) {      this.e1       = $(e1);      this.e2       = $(e2);      this.start    = start;      this.end      = end;      this.duration = duration;      this.steps    = steps;      this.options  = arguments[6] || {};      this.accordionSize();   },   accordionSize: function() {      if (this.isFinished()) {         // just in case there are round errors or such...         this.e1.style.height = this.start + "px";         this.e2.style.height = this.end + "px";         if(this.options.complete)            this.options.complete(this);         return;      }      if (this.timer)         clearTimeout(this.timer);      var stepDuration = Math.round(this.duration/this.steps) ;      var diff = this.steps > 0 ? (parseInt(this.e1.offsetHeight) - this.start)/this.steps : 0;      this.resizeBy(diff);      this.duration -= stepDuration;      this.steps--;      this.timer = setTimeout(this.accordionSize.bind(this), stepDuration);   },   isFinished: function() {      return this.steps <= 0;   },   resizeBy: function(diff) {      var h1Height = this.e1.offsetHeight;      var h2Height = this.e2.offsetHeight;      var intDiff = parseInt(diff);      if ( diff != 0 ) {         this.e1.style.height = (h1Height - intDiff) + "px";         this.e2.style.height = (h2Height + intDiff) + "px";      }   }};//-------------------- ricoLiveGrid.js// Rico.LiveGridMetaData -----------------------------------------------------Rico.LiveGridMetaData = Class.create();Rico.LiveGridMetaData.prototype = {   initialize: function( pageSize, totalRows, columnCount, options ) {      this.pageSize  = pageSize;      this.totalRows = totalRows;      this.setOptions(options);      this.scrollArrowHeight = 16;      this.columnCount = columnCount;   },   setOptions: function(options) {      this.options = {         largeBufferSize    : 7.0,   // 7 pages         nearLimitFactor    : 0.2    // 20% of buffer      }.extend(options || {});   },   getPageSize: function() {      return this.pageSize;   },   getTotalRows: function() {      return this.totalRows;   },   setTotalRows: function(n) {      this.totalRows = n;   },   getLargeBufferSize: function() {      return parseInt(this.options.largeBufferSize * this.pageSize);   },   getLimitTolerance: function() {      return parseInt(this.getLargeBufferSize() * this.options.nearLimitFactor);   }};// Rico.LiveGridScroller -----------------------------------------------------Rico.LiveGridScroller = Class.create();Rico.LiveGridScroller.prototype = {   initialize: function(liveGrid, viewPort) {      this.isIE = navigator.userAgent.toLowerCase().indexOf("msie") >= 0;      this.liveGrid = liveGrid;      this.metaData = liveGrid.metaData;      this.createScrollBar();      this.scrollTimeout = null;      this.lastScrollPos = 0;      this.viewPort = viewPort;      this.rows = new Array();   },   isUnPlugged: function() {      return this.scrollerDiv.onscroll == null;   },   plugin: function() {      this.scrollerDiv.onscroll = this.handleScroll.bindAsEventListener(this);   },   unplug: function() {      this.scrollerDiv.onscroll = null;   },   sizeIEHeaderHack: function() {      if ( !this.isIE ) return;      var headerTable = $(this.liveGrid.tableId + "_header");      if ( headerTable )         headerTable.rows[0].cells[0].style.width =            (headerTable.rows[0].cells[0].offsetWidth + 1) + "px";   },   createScrollBar: function() {      var visibleHeight = this.liveGrid.viewPort.visibleHeight();      // create the outer div...      this.scrollerDiv  = document.createElement("div");      var scrollerStyle = this.scrollerDiv.style;      scrollerStyle.borderRight = "1px solid #ababab"; // hard coded color!!!      scrollerStyle.position    = "relative";      scrollerStyle.left        = this.isIE ? "-6px" : "-3px";      scrollerStyle.width       = "19px";      scrollerStyle.height      = visibleHeight + "px";      scrollerStyle.overflow    = "auto";      // create the inner div...      this.heightDiv = document.createElement("div");      this.heightDiv.style.width  = "1px";      this.heightDiv.style.height = parseInt(visibleHeight *                        this.metaData.getTotalRows()/this.metaData.getPageSize()) + "px" ;      this.scrollerDiv.appendChild(this.heightDiv);      this.scrollerDiv.onscroll = this.handleScroll.bindAsEventListener(this);     var table = this.liveGrid.table;     table.parentNode.parentNode.insertBefore( this.scrollerDiv, table.parentNode.nextSibling );   },   updateSize: function() {      var table = this.liveGrid.table;      var visibleHeight = this.viewPort.visibleHeight();      this.heightDiv.style.height = parseInt(visibleHeight *                                  this.metaData.getTotalRows()/this.metaData.getPageSize()) + "px";   },   rowToPixel: function(rowOffset) {      return (rowOffset / this.metaData.getTotalRows()) * this.heightDiv.offsetHeight   },      moveScroll: function(rowOffset) {      this.scrollerDiv.scrollTop = this.rowToPixel(rowOffset);      if ( this.metaData.options.onscroll )         this.metaData.options.onscroll( this.liveGrid, rowOffset );       },   handleScroll: function() {     if ( this.scrollTimeout )         clearTimeout( this.scrollTimeout );      var contentOffset = parseInt(this.scrollerDiv.scrollTop / this.viewPort.rowHeight);      this.liveGrid.requestContentRefresh(contentOffset);      this.viewPort.scrollTo(this.scrollerDiv.scrollTop);            if ( this.metaData.options.onscroll )         this.metaData.options.onscroll( this.liveGrid, contentOffset );      this.scrollTimeout = setTimeout( this.scrollIdle.bind(this), 1200 );   },   scrollIdle: function() {      if ( this.metaData.options.onscrollidle )         this.metaData.options.onscrollidle();   }};// Rico.LiveGridBuffer -----------------------------------------------------Rico.LiveGridBuffer = Class.create();Rico.LiveGridBuffer.prototype = {   initialize: function(metaData, viewPort) {      this.startPos = 0;      this.size     = 0;      this.metaData = metaData;      this.rows     = new Array();      this.updateInProgress = false;      this.viewPort = viewPort;      this.maxBufferSize = metaData.getLargeBufferSize() * 2;      this.maxFetchSize = metaData.getLargeBufferSize();      this.lastOffset = 0;   },   getBlankRow: function() {      if (!this.blankRow ) {         this.blankRow = new Array();         for ( var i=0; i < this.metaData.columnCount ; i++ )             this.blankRow[i] = "&nbsp;";     }     return this.blankRow;   },      loadRows: function(ajaxResponse) {      var rowsElement = ajaxResponse.getElementsByTagName('rows')[0];      this.updateUI = rowsElement.getAttribute("update_ui") == "true"      var newRows = new Array()      var trs = rowsElement.getElementsByTagName("tr");      for ( var i=0 ; i < trs.length; i++ ) {         var row = newRows[i] = new Array();          var cells = trs[i].getElementsByTagName("td");         for ( var j=0; j < cells.length ; j++ ) {            var cell = cells[j];            var convertSpaces = cell.getAttribute("convert_spaces") == "true";            var cellContent = RicoUtil.getContentAsString(cell);            row[j] = convertSpaces ? this.convertSpaces(cellContent) : cellContent;            if (!row[j])                row[j] = '&nbsp;';         }      }      return newRows;   },         update: function(ajaxResponse, start) {     var newRows = this.loadRows(ajaxResponse);      if (this.rows.length == 0) { // initial load         this.rows = newRows;         this.size = this.rows.length;         this.startPos = start;         return;      }      if (start > this.startPos) { //appending         if (this.startPos + this.rows.length < start) {            this.rows =  newRows;            this.startPos = start;//         } else {              this.rows = this.rows.concat( newRows.slice(0, newRows.length));            if (this.rows.length > this.maxBufferSize) {               var fullSize = this.rows.length;               this.rows = this.rows.slice(this.rows.length - this.maxBufferSize, this.rows.length)               this.startPos = this.startPos +  (fullSize - this.rows.length);            }         }      } else { //prepending         if (start + newRows.length < this.startPos) {            this.rows =  newRows;         } else {            this.rows = newRows.slice(0, this.startPos).concat(this.rows);            if (this.rows.length > this.maxBufferSize)                this.rows = this.rows.slice(0, this.maxBufferSize)         }         this.startPos =  start;      }      this.size = this.rows.length;   },      clear: function() {      this.rows = new Array();      this.startPos = 0;      this.size = 0;   },   isOverlapping: function(start, size) {      return ((start < this.endPos()) && (this.startPos < start + size)) || (this.endPos() == 0)   },   isInRange: function(position) {      return (position >= this.startPos) && (position + this.metaData.getPageSize() <= this.endPos());              //&& this.size()  != 0;   },   isNearingTopLimit: function(position) {      return position - this.startPos < this.metaData.getLimitTolerance();   },   endPos: function() {      return this.startPos + this.rows.length;   },      isNearingBottomLimit: function(position) {      return this.endPos() - (position + this.metaData.getPageSize()) < this.metaData.getLimitTolerance();   },   isAtTop: function() {      return this.startPos == 0;   },   isAtBottom: function() {      return this.endPos() == this.metaData.getTotalRows();   },   isNearingLimit: function(position) {      return ( !this.isAtTop()    && this.isNearingTopLimit(position)) ||             ( !this.isAtBottom() && this.isNearingBottomLimit(position) )   },   getFetchSize: function(offset) {      var adjustedOffset = this.getFetchOffset(offset);      var adjustedSize = 0;      if (adjustedOffset >= this.startPos) { //apending         var endFetchOffset = this.maxFetchSize  + adjustedOffset;         if (endFetchOffset > this.metaData.totalRows)            endFetchOffset = this.metaData.totalRows;         adjustedSize = endFetchOffset - adjustedOffset;         } else {//prepending         var adjustedSize = this.startPos - adjustedOffset;         if (adjustedSize > this.maxFetchSize)            adjustedSize = this.maxFetchSize;      }      return adjustedSize;   },    getFetchOffset: function(offset) {      var adjustedOffset = offset;      if (offset > this.startPos)  //apending         adjustedOffset = (offset > this.endPos()) ? offset :  this.endPos();       else { //prepending         if (offset + this.maxFetchSize >= this.startPos) {            var adjustedOffset = this.startPos - this.maxFetchSize;            if (adjustedOffset < 0)               adjustedOffset = 0;         }      }      this.lastOffset = adjustedOffset;      return adjustedOffset;   },   getRows: function(start, count) {      var begPos = start - this.startPos      var endPos = begPos + count      // er? need more data...      if ( endPos > this.size )         endPos = this.size      var results = new Array()      var index = 0;      for ( var i=begPos ; i < endPos; i++ ) {         results[index++] = this.rows[i]      }      return results   },   convertSpaces: function(s) {      return s.split(" ").join("&nbsp;");   }};//Rico.GridViewPort --------------------------------------------------Rico.GridViewPort = Class.create();Rico.GridViewPort.prototype = {   initialize: function(table, rowHeight, visibleRows, buffer, liveGrid) {      this.lastDisplayedStartPos = 0;      this.div = table.parentNode;      this.table = table      this.rowHeight = rowHeight;      this.div.style.height = this.rowHeight * visibleRows;      this.div.style.overflow = "hidden";      this.buffer = buffer;      this.liveGrid = liveGrid;      this.visibleRows = visibleRows + 1;      this.lastPixelOffset = 0;      this.startPos = 0;   },   populateRow: function(htmlRow, row) {      for (var j=0; j < row.length; j++) {         htmlRow.cells[j].innerHTML = row[j]      }   },      bufferChanged: function() {      this.refreshContents( parseInt(this.lastPixelOffset / this.rowHeight));   },      clearRows: function() {      if (!this.isBlank) {         for (var i=0; i < this.visibleRows; i++)            this.populateRow(this.table.rows[i], this.buffer.getBlankRow());         this.isBlank = true;      }   },      clearContents: function() {         this.clearRows();      this.scrollTo(0);      this.startPos = 0;      this.lastStartPos = -1;      },      refreshContents: function(startPos) {      if (startPos == this.lastRowPos && !this.isPartialBlank && !this.isBlank) {         return;      }      if ((startPos + this.visibleRows < this.buffer.startPos)            || (this.buffer.startPos + this.buffer.size < star

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91丝袜在线18| 久久精品亚洲精品国产欧美kt∨| 日韩欧美亚洲国产精品字幕久久久| 精品久久国产字幕高潮| 亚洲一区二区三区中文字幕| 国产高清精品网站| 精品国产一区二区国模嫣然| 亚洲综合在线观看视频| 国产精品一品视频| 精品播放一区二区| 日韩经典一区二区| 欧美日本高清视频在线观看| 国产精品久久久久国产精品日日| 韩日欧美一区二区三区| 7777精品伊人久久久大香线蕉完整版| 日韩一区有码在线| 国产宾馆实践打屁股91| 亚洲精品一区二区三区福利| 日本中文在线一区| 91精品国产综合久久精品性色| 亚洲激情在线播放| 91丨porny丨国产| 亚洲欧洲在线观看av| 国产成人亚洲综合a∨婷婷| 日韩视频国产视频| 看电影不卡的网站| 精品国产一区二区精华| 国内精品久久久久影院色 | 精品国产欧美一区二区| 日韩国产欧美三级| 欧美年轻男男videosbes| 亚洲小说欧美激情另类| 欧美午夜不卡在线观看免费| 亚洲综合激情另类小说区| 色天天综合久久久久综合片| 亚洲黄色在线视频| 欧美色图在线观看| 日本欧美肥老太交大片| 欧美一区二区网站| 久久69国产一区二区蜜臀| 精品久久久久一区二区国产| 久久国产麻豆精品| 国产午夜精品福利| 97精品电影院| 亚洲高清不卡在线观看| 91精品国产一区二区三区蜜臀| 免费看黄色91| 国产午夜精品一区二区三区视频| 成人免费看片app下载| 亚洲理论在线观看| 欧美精选一区二区| 韩国三级在线一区| 亚洲天堂网中文字| 欧美三级日韩三级国产三级| 蜜桃视频一区二区三区在线观看| 精品美女一区二区| 成人av在线资源网站| 亚洲自拍另类综合| 久久综合久久综合久久| 99视频精品免费视频| 亚洲高清视频的网址| 欧美精品一区二区三区在线播放 | 亚洲一卡二卡三卡四卡五卡| 91精品国产综合久久蜜臀| 国产激情精品久久久第一区二区 | 中文字幕五月欧美| 欧美精品精品一区| 成人久久久精品乱码一区二区三区| 亚洲男人的天堂在线aⅴ视频| 337p亚洲精品色噜噜狠狠| 国产一区二区免费看| 亚洲在线成人精品| 久久精子c满五个校花| 欧美日韩在线三级| 不卡视频免费播放| 麻豆91小视频| 性做久久久久久免费观看| 久久精品水蜜桃av综合天堂| 欧美人与性动xxxx| 不卡av在线免费观看| 九一久久久久久| 亚洲最新在线观看| 中文字幕一区免费在线观看| 欧美一区二区精品在线| 色综合久久99| 国产v综合v亚洲欧| 裸体一区二区三区| 五月天一区二区| 亚洲欧美一区二区久久 | 成人福利视频网站| 青青草97国产精品免费观看 | 欧洲精品一区二区| 成人黄色av电影| 国产激情一区二区三区| 日本免费在线视频不卡一不卡二| 亚洲靠逼com| 亚洲天堂久久久久久久| 国产嫩草影院久久久久| 久久久美女艺术照精彩视频福利播放| 欧美精品v日韩精品v韩国精品v| 北岛玲一区二区三区四区| 国内精品伊人久久久久av一坑| 午夜精品爽啪视频| 亚洲成精国产精品女| 亚洲日本va在线观看| 国产欧美精品日韩区二区麻豆天美| 欧美大肚乱孕交hd孕妇| 欧美一区午夜视频在线观看| 91福利在线看| 色婷婷久久99综合精品jk白丝| av电影天堂一区二区在线| av在线不卡观看免费观看| 国产成人在线视频免费播放| 国产精品66部| 成人动漫一区二区在线| www.亚洲精品| 色婷婷亚洲一区二区三区| 日本高清不卡一区| 欧美视频一区二区三区在线观看| 在线免费不卡视频| 777精品伊人久久久久大香线蕉| 欧美二区在线观看| 欧美成人一区二区三区| 26uuu色噜噜精品一区二区| 精品国产亚洲一区二区三区在线观看| 欧美r级在线观看| 久久久无码精品亚洲日韩按摩| 国产午夜精品美女毛片视频| 中文字幕av不卡| 亚洲视频免费在线| 亚洲一级二级三级| 看国产成人h片视频| 国产成人日日夜夜| 91在线精品秘密一区二区| 欧美午夜寂寞影院| 精品日韩99亚洲| 日韩理论片网站| 亚洲第四色夜色| 国产自产视频一区二区三区| 成人一区二区视频| 欧美揉bbbbb揉bbbbb| 日韩欧美国产精品| 亚洲欧美中日韩| 午夜久久久影院| 国产成人精品一区二区三区四区| www.欧美日韩| 欧美日韩电影在线播放| 久久久久久久久久久久久久久99 | |精品福利一区二区三区| 亚洲成人av中文| 久草这里只有精品视频| 99在线精品一区二区三区| 欧美理论片在线| 国产日韩欧美精品电影三级在线| 一区二区三区四区在线免费观看| 日韩中文字幕一区二区三区| 国产成人免费9x9x人网站视频| 色综合久久综合中文综合网| 91麻豆精品国产91久久久久久| 亚洲国产精品v| 日本少妇一区二区| 9l国产精品久久久久麻豆| 欧美一级二级在线观看| 成人免费小视频| 久久精品国产免费| 欧美日韩一区精品| 亚洲欧美二区三区| 国产电影一区二区三区| 69av一区二区三区| 亚洲欧美激情视频在线观看一区二区三区 | 日韩高清一区在线| 日本久久一区二区三区| 国产视频亚洲色图| 老司机精品视频线观看86| 在线观看亚洲一区| 亚洲天堂中文字幕| 国产麻豆成人精品| 欧美成va人片在线观看| 亚洲图片有声小说| 日本韩国视频一区二区| 国产精品久久久久久久久久免费看| 蜜臀av一级做a爰片久久| 欧美三级三级三级| 亚洲精品免费一二三区| 丁香啪啪综合成人亚洲小说| 日韩欧美国产精品一区| 日日骚欧美日韩| 欧美性videosxxxxx| 一区二区三区加勒比av| 99re免费视频精品全部| 国产女主播视频一区二区| 国产乱子轮精品视频| 欧美成人激情免费网| 久久成人av少妇免费| 日韩午夜在线观看| 久久精品国产网站| 久久久综合激的五月天| 国产成人在线色| 亚洲欧洲国产日韩| 在线观看日韩高清av|