Advertisement
Guest User

Kontrolka

a guest
Jul 23rd, 2014
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /// <reference path="jquery.d.ts" />
  2.  
  3. interface  IDynamicItem {
  4.  
  5. }
  6.  
  7.  
  8.         class DynamicMenu {
  9.             private target: HTMLElement;
  10.             private items: Array<DynamicMenuItem>;
  11.  
  12.             constructor(target: HTMLElement) {
  13.                 this.target = target;
  14.                 this.items = new Array();
  15.             }
  16.  
  17.             addItem(item: DynamicMenuItem) {
  18.                 this.items[this.items.length] = item;
  19.             }
  20.  
  21.             render() {
  22.                 var content: string;
  23.                 content = '    <div class="dropdown">' +
  24.                     '<button class="btn btn-default dropdown-toggle" type = "button" id = "dropdownMenu1" data-toggle = "dropdown" >Dropdown<span class="caret" ></span ></button >' +
  25.                 '<ul class="dropdown-menu" role = "menu" aria - labelledby = "dropdownMenu1" >';
  26.  
  27.                 //var item: any;
  28.                 for ( var i = 0; i < this.items.length; i++) {
  29.                     content += this.items[i].render();
  30.                     //document.write(v);
  31.                 }
  32.  
  33.                 content += '</ul ></div > ';
  34.  
  35.                 //return content;
  36.  
  37.                 this.target.innerHTML = content;
  38.                 //$(content).appendTo(this.target);
  39.             }
  40.  
  41.  
  42.         }
  43.  
  44.         class DynamicMenuItem {
  45.             public show: boolean = true;
  46.             private caption: string;
  47.             private value: string;
  48.             private tag: string;
  49.            
  50.             constructor(caption: string, value: string, tag: string) {
  51.                 this.caption = caption;
  52.                 this.value = value;
  53.                 this.tag = tag;
  54.             }
  55.  
  56.             render() {
  57.                 var res: string;
  58.                 res = '<li role = "presentation" ><a role = "' + this.tag + '" tabindex = "-1" href = "' + this.value + '" > ' + this.caption + ' </a></li>';
  59.                 return res;
  60.             }
  61.         }
  62.  
  63.  
  64.  
  65.  
  66. $(document).ready(() => {
  67.  
  68.     var item1: DynamicMenuItem = new DynamicMenuItem('Pozycja pierwsza', 'adres1', 'menuitem');
  69.     var item2: DynamicMenuItem = new DynamicMenuItem('Pozycja druga', 'adres2', 'menuitem');
  70.     var item3: DynamicMenuItem = new DynamicMenuItem('Pozycja trecia', 'adres3', 'menuitem');
  71.  
  72.     var menu: DynamicMenu = new DynamicMenu(document.getElementById("clickdiv"));
  73.     menu.addItem(item1);
  74.     menu.addItem(item2);
  75.     menu.addItem(item3);
  76.  
  77.     menu.render();
  78.  
  79.  
  80. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement