JAVASCRIPT   92

waterfloor.js

Guest on 31st July 2021 07:19:41 AM

  1. /**
  2.  * �穃�瘚��遆�㺭摨�
  3.  *
  4.  * @author kokko<kokkowon@itbeing.com>
  5.  * @copyright 銝�憭拙�𥟇�喉���𦯀漪嚗厩�烐���厰�𣂼�砍虬<service@itbeing.com>
  6.  * @link http://www.itbeing.com
  7.  * @version 2012-03-10
  8.  */v///�𦶢��滨征�𡢿
  9. com>
  10.  * @link http://www.itbeing.com
  11.  ///��𥕦遣�穃�瘚�
  12. 12-03-10
  13.  */
  14. ///�𦶢//摰孵膥撖寡情
  15. �𡢿
  16. var itbe//摨閖�典捆�膥撖寡情
  17. = itbeing || {};
  18.  
  19. /////��堒捆�膥鋆�頧賢��蝝䭾��倌
  20. itbeing.waterf//��堒捆�膥��css class
  21. 撖寡情
  22.         container:null,
  23.         //摨閖�典///��㛖漣摰孵膥��撘閧鍂,
  24.         bottomContainer:null,
  25.         //��堒捆�膥鋆�頧賢��蝝䭾��倌
  26.         elem//��埈㺭
  27. 'div',
  28.         ////�鵭摨行�撠讐���㛖揣撘�
  29. ��css c//�鵭摨行�憭抒���㛖揣撘�
  30. s:'itbeing_w//敶枏�滚�㰘蝸�𠶖��嚗䔶蛹鈭��俈甇a�滚�滩窈瘙���㰘蝸�㺭�旿,true銝滩窈瘙�嚗靕alse�虾隞亥窈瘙�
  31.  
  32.         elementArr: [//霂瑟�URL
  33. dElementTag://��憿菟△��
  34. pendElemen//�㺭�旿
  35. 'waterfloor_b//�㺭�旿�聢撘𧶏�峕𣈲��json��匤tml
  36. w: 4,
  37.         //�鵭//�糓�炏
  38. ��㛖揣撘//��㰘蝸�㺭�旿��鞟內瘨���
  39. 鵭摨行�憭抒���㛖揣撘�
  40.         maxRow:0,
  41.         //敶枏�滚�㰘蝸�𠶖��嚗䔶蛹鈭��俈甇a�滚�滩窈瘙���㰘蝸�㺭�旿,true銝滩窈瘙�嚗靕alse�虾隞亥窈瘙�
  42.         status:true,
  43.         //霂瑟�URL
  44.         url: "",        ////蝔见�誩�嘥�见��
  45. △��
  46.         page:1,
  47.         //�㺭//��嘥�
  48. ll,
  49.         //�㺭�旿�聢撘𧶏//if(options) { $.extend(settings, options); }
  50.  
  51.         ///��𥕦遣摰孵膥
  52. 炏撘�
  53.         isDebug:false,
  54.         //��㰘蝸�㺭�旿��//銝箸�𡁜𢆡�辺��惩�亦�穃𨯬
  55.  
  56.         loadingMsg:{
  57.                 start://��㰘蝸蝚砌�憿菜㺭�旿
  58. �㰘蝸銝�...',
  59.                 ///�滨蔭���㺭
  60. �旿��㰘蝸摰峕��...'
  61.         },
  62.         extraScrollType:'min',
  63.         extraScrollPx:150,
  64.         ajaxStart:undefined,
  65.         ajaxCallback:undefined,
  66.         itemS//��𥕦遣摰孵膥
  67. iv.itbeing_waterfloor_item',
  68.         bottomSelector:'div.itbeing_waterfloor_pager',
  69.         ////蝔见�誩�嘥�见��
  70.         init: function(options) {      
  71.                 //��嘥
  72.                 this.initParameter(options);
  73.                 //if(options) { $.extend(settings, options); }
  74.                 ///��𥕦遣摰孵膥
  75.                 var str = [];
  76.                 if(this.elementArr.le///蝏蹱�𡁜𢆡�辺瘛餃�删�穃𨯬
  77. CreateContainer();
  78.                 //銝箸�𡁜𢆡�辺��惩�亦�穃𨯬
  79.                 this.initScroll();
  80.                 //��㰘蝸蝚砌�憿菜㺭�旿
  81.                 this.loadData();
  82.         },
  83.         ///�滨蔭���㺭
  84.         initParameter: function(options) {
  85.                 for (var i in options) {
  86.                         if (this.hasOwnProperty(i)) {
  87.                                 this[i] = options[i];
  88.                         }
  89.                 }
  90.         },
  91.         //��𥕦遣摰孵膥
  92.         initCreateContainer:function(){
  93.                 for (var i = //ajax�繮��𡝗㺭�旿
  94. ; i++) {
  95.                         var element = document.createElement(this.elementTag);
  96.                         element.className = this.elementClass;
  97.                         this.container.appendChild(element);
  98.                         var top = $(this.container).offset().top;
  99.                         this.elementArr.push({"top": top,"element": element});
  100.                 }
  101.         },
  102.         ///蝏蹱�𡁜𢆡�辺瘛餃�删�穃𨯬
  103.         initScroll: function() {
  104.                 var self = this;
  105.                 $(window).scroll(functio//self.onAjaxComplete();
  106. dow).height() + $(window).scrollTop();
  107.                         var top  = self.elementArr[//�繮��硋�憿萇�URL�𧑐��
  108. self.extraScrollPx;
  109.                         if(self.extraScrollType!='min'){
  110.                                 top = self.elementArr[self.maxRow].top - self.extraScrollPx;
  111.                         }
  112.                         if (temp > top && self.status == false) {
  113.                                 self.loadData();
  114.                         }
  115.                 });
  116.         },
  117.         //ajax�繮��𡝗㺭�旿
  118.         loadData:function(){
  119.                 this.status = true;
  120.                 this.//ajax�繮��𡝗㺭�旿銋见�滩繮��硋�憪𧢲�銵�
  121. his;
  122.                 var url = this.getURL();
  123.                 var dataType = (this.format!='html' && this.format!='json') ? 'html' : this.format;
  124.                 this.debug(' + this.loadingMsg.start+ 'ajax(   
  125.                 {
  126.                         complete:self.onAjaxComplete(),
  127.                         dataType:dataType//�繮��𡝗㺭�旿��𣂼�煺�见�𤾸�憪𧢲�銵�
  128. s:function(request){
  129.                                 self.data = request;
  130.                                 //self.onAjaxComplete();
  131.                                 self.onCallback();
  132.                         },
  133.                         type:'GET',
  134.                         url:url
  135.                 });
  136.         },
  137.         //�繮��硋�憿萇�URL�𧑐��
  138.         getURL:function(){
  139.                 var url = this.url;
  140.                 url = urlRequest.setParameter( 'format',this.format,url//$(this).parent().fadeOut('normal');
  141. page',this.//end
  142. rl );//��噼��遆�㺭
  143. e = this.page+1;
  144.                 return url;
  145.         },
  146.         setbottomContainerHtml: function(str) {
  147.                 this.bottomContainer.innerHTML = str;
  148.         },
  149.         //ajax�繮��𡝗㺭�旿銋见�滩繮��硋�憪𧢲�銵�
  150.         onAjaxStart:function(){
  151.                 this.debug('start load data....');
  152.                 this.//�蘨閬��糓��噻son��𤥁��xml�����𧋦�扯捶���㺭�旿
  153. ng_water_floor_loading">' && this.format!='.start+ '</div>');
  154.                 if(this.ajaxStart!==undefi//�餌��㺭�旿霈啣��
  155. Start();
  156.         },
  157.         //�繮��𡝗㺭�旿��𣂼�煺�见�𤾸�憪//var html  = $.trim($(this).parent().html());
  158. debug('complete load data....');
  159.                 this.setbottomContainerHtml('<div id="itbeing_water_floor_loading//憒���𨀣瓷��㕑扇敶𤏪�䔶�滚�滚�㰘蝸銝衤�憿�
  160. /div>');
  161.                 $('#itbeing_water_floor_loading').animate({ opacity: 1 }, 2000, function () {
  162.                 $(this).fadeOut('normal');
  163.                         //$(this).parent().fadeOut('normal');
  164.             });
  165.                 //end
  166.         },
  167.         //��噼��遆�㺭
  168.         onCallback:function(){//alert(this.data);
  169.  callback data....');
  170.                 this.debug(this.data///�𪄳�枂��������鍦�交���𠰴�枏�滚�潭�鍦�亥砲���
  171. json' && !this.data.waterfloor)) return;
  172.                 this.status = false;
  173.                 if(this.ajaxCallback!==undefined){
  174.                         this.ajaxCallback(this);
  175.                 }else{
  176.                         //�蘨閬��糓��噻son��𤥁��xml�����𧋦�扯捶���㺭�旿
  177.                         if(this.format!='json' && this.format!='xml'){
  178.                                 var self = this;
  179.                                 var total = 0;  //�餌��㺭�旿霈啣��
  180.                                 $(this.data).find(this.itemSelector).each(function(index, element) {
  181.                                         //var html  = $.trim($(this).parent().html());///��鍦�交㺭�旿
  182. ml  = $.trim($(this).html());
  183.                                         if(html) self.append(html);
  184.                                         total++;
  185.                                 });
  186.                                 //憒���𨀣瓷��㕑扇敶𤏪�䔶�滚�滚�㰘蝸銝衤�憿�
  187.                                 if(total==0){
  188.                                         this.status=true;
  189.                                         this.debug('no result loaded...');
  190.                                 }
  191.                                 var b = $.trim( $(self.data).find(self.bottomSelector).html() );
  192.                                 this.debug("b///����𨀣遬蝷�
  193.                                 self.setbottomContainerHtml(b);
  194.                         }else{
  195.                                 //alert(this.data);
  196.                         }
  197.                 }
  198.                 this.getElementContainer();
  199.         },
  200.         ///�𪄳�枂��������鍦�交���𠰴�枏�滚�潭�鍦�亥砲���
  201.         getElementContainer: function() {
  202.                 var minTop = this.elementArr[this.minRow].top;
  203.                 var maxTop  = this.elementArr[this.maxRow].top;
  204.                 for( var i=0;i<this.row;i++){
  205.                

Raw Paste


Login or Register to edit or fork this paste. It's free.