Показать сообщение отдельно
  #3 (permalink)  
Старый 15.02.2013, 21:36
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

не уверен что правильно понял что ты хочешь.
пример отделения данных

<!DOCTYPE HTML>
<html>
  <head> </head>
  <body>
    <button id="add"> добавить товар </button>
    <div id="cart"> </div>
    <script>
 	    store=function(){
        	this.data=[];
        	this.event={};    
        };
      
		store.prototype={
          
          fire:function(name,options){
              for (item in this.event[name]) this.event[name][item](options);
          }, 
            
          on:function(name,fun){
			  if (typeof this.event[name]=="undefined") this.event[name]=[];
              this.event[name].push(fun);	
          },
            
          add:function(data){
              this.data.push(data);          
              this.fire('change');	
          },
            
          get:function(){
              //бла бла
          },
            
          each:function(fun){
              var data=this.data,
                  i=0,
                  len=this.data.length;
              for(;i<len;i++){
                  fun(data[i],i,this)
              }          
          }            
		}	
        
        
        //контролёр
        function test(){
          // заполняем данными
			var m=new store(),
                el=document.getElementById('add'),
                cart=document.getElementById('cart');
          
            el.addEventListener('click',function(){
          		m.add({price:100,name:"хреновина"});
            });                            
        
          
          
			m.on('change',function(){
              var sum=0,text="";
              
              m.each(function(e){             	
                sum+=e.price;            
                text+=e.name+" за "+ e.price+"$<br/>";
              })          
                                          
              if (sum>500) text=text+"вы золотой покупатель"
              else if (sum>300) text=text+"вы серебрянный покупатель";
              cart.innerHTML=text;
          	})           
        };
      
        test();

      
    </script>

  </body>
</html>
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 15.02.2013 в 22:36.
Ответить с цитированием