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

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

?? organizer.js

?? ext js demo ext學習資料
?? JS
字號:
/*
 * Ext JS Library 1.1 RC 1
 * Copyright(c) 2006-2007, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://www.extjs.com/license
 */

Ext.tree.TreeNodeUI.prototype.initEvents =
Ext.tree.TreeNodeUI.prototype.initEvents.createSequence(function(){
      if(this.node.attributes.tipCfg){
          var o = this.node.attributes.tipCfg;
          o.target = Ext.id(this.textNode);
          Ext.QuickTips.register(o);
      }
});

var TreeTest = function(){
    // shorthand
    var Tree = Ext.tree;
    var newIndex = 3;
    
    return {
        init : function(){
            Ext.QuickTips.init();
            var layout = new Ext.BorderLayout('layout', {
                west: {
                    initialSize:200,
                    split:true,
                    titlebar:true
                },
                center: {
                    alwaysShowTabs:true,
                    tabPosition:'top'
                }
            });
            
            var albums = layout.getEl().createChild({tag:'div', id:'albums'});
            var tb = new Ext.Toolbar(albums.createChild({tag:'div'}));
            tb.addButton({
                text: 'New Album',
                cls: 'x-btn-text-icon album-btn',
                handler: function(){
                    var node = root.appendChild(new Tree.TreeNode({
                        text:'Album ' + (++newIndex), 
                        cls:'album-node', 
                        allowDrag:false
                    }));
                    tree.getSelectionModel().select(node);
                    setTimeout(function(){
                        ge.editNode = node;
                        ge.startEdit(node.ui.textNode);
                    }, 10);
                }
            });
            var viewEl = albums.createChild({tag:'div', id:'folders'});
            
            var folders = layout.add('west', new Ext.ContentPanel(albums, {
                title:'My Albums', 
                fitToFrame:true,
                autoScroll:true,
                autoCreate:true,
                toolbar: tb,
                resizeEl:viewEl
            }));
            
            var images = layout.add('center', new Ext.ContentPanel('images', {
                title:'My Images', 
                fitToFrame:true,
                autoScroll:true,
                autoCreate:true
            }));
            var imgBody = images.getEl();
            
            var tree = new Tree.TreePanel(viewEl, {
                animate:true, 
                enableDD:true,
                containerScroll: true,
                ddGroup: 'organizerDD',
                rootVisible:false
            });
            var root = new Tree.TreeNode({
                text: 'Albums', 
                allowDrag:false,
                allowDrop:false
            });
            tree.setRootNode(root);
            
            root.appendChild(
                new Tree.TreeNode({text:'Album 1', cls:'album-node', allowDrag:false}),
                new Tree.TreeNode({text:'Album 2', cls:'album-node', allowDrag:false}),
                new Tree.TreeNode({text:'Album 3', cls:'album-node', allowDrag:false})
            );
            
            tree.render();
            root.expand();
            
            // add an inline editor for the nodes
            var ge = new Ext.tree.TreeEditor(tree, {
                allowBlank:false,
                blankText:'A name is required',
                selectOnFocus:true
            });
            
            // create the required templates
        	var tpl = new Ext.Template(
        		'<div class="thumb-wrap" id="{name}">' +
        		'<div class="thumb"><img src="{url}" class="thumb-img"></div>' +
        		'<span>{shortName}</span></div>'
        	);
        	
        	var qtipTpl = new Ext.Template(
        	    '<div class="image-tip"><img src="{url}" align="left">'+
        		'<b>Image Name:</b>' +
        		'<span>{name}</span>' +
        		'<b>Size:</b>' +
        		'<span>{sizeString}</span></div>'
        	);
        	qtipTpl.compile();	
        	
        	// initialize the View		
        	var view = new Ext.JsonView(imgBody, tpl, {
        		multiSelect: true,
        		jsonRoot: 'images'
        	});
        	
        	var lookup = {};
        	
        	view.prepareData = function(data){
            	data.shortName = data.name.ellipse(15);
            	data.sizeString = (Math.round(((data.size*10) / 1024))/10) + " KB";
            	//data.dateString = new Date(data.lastmod).format("m/d/Y g:i a");
            	data.qtip = new String(qtipTpl.applyTemplate(data));
            	lookup[data.name] = data;
            	return data;
            };
            
            var dragZone = new ImageDragZone(view, {containerScroll:true,
                ddGroup: 'organizerDD'});
            
            view.load({
                url: '../view/get-images.php'
            });
            
            var rz = new Ext.Resizable('layout', {
                wrap:true, 
                pinned:true, 
                adjustments:[-6,-6],
                minWidth:300
            });
            rz.on('resize', function(){
                layout.layout();
            });
            rz.resizeTo(650, 350);
        }
    };
}();

Ext.EventManager.onDocumentReady(TreeTest.init, TreeTest, true);

/**
 * Create a DragZone instance for our JsonView
 */
ImageDragZone = function(view, config){
    this.view = view;
    ImageDragZone.superclass.constructor.call(this, view.getEl(), config);
};
Ext.extend(ImageDragZone, Ext.dd.DragZone, {
    // We don't want to register our image elements, so let's 
    // override the default registry lookup to fetch the image 
    // from the event instead
    getDragData : function(e){
        e = Ext.EventObject.setEvent(e);
        var target = e.getTarget('.thumb-wrap');
        if(target){
            var view = this.view;
            if(!view.isSelected(target)){
                view.select(target, e.ctrlKey);
            }
            var selNodes = view.getSelectedNodes();
            var dragData = {
                nodes: selNodes
            };
            if(selNodes.length == 1){
                dragData.ddel = target.firstChild.firstChild; // the img element
                dragData.single = true;
            }else{
                var div = document.createElement('div'); // create the multi element drag "ghost"
                div.className = 'multi-proxy';
                for(var i = 0, len = selNodes.length; i < len; i++){
                    div.appendChild(selNodes[i].firstChild.firstChild.cloneNode(true));
                    if((i+1) % 3 == 0){
                        div.appendChild(document.createElement('br'));
                    }
                }
                dragData.ddel = div;
                dragData.multi = true;
            }
            return dragData;
        }
        return false;
    },
    
    // this method is called by the TreeDropZone after a node drop 
    // to get the new tree node (there are also other way, but this is easiest)
    getTreeNode : function(){
        var treeNodes = [];
        var nodeData = this.view.getNodeData(this.dragData.nodes);
        for(var i = 0, len = nodeData.length; i < len; i++){
            var data = nodeData[i];
            treeNodes.push(new Ext.tree.TreeNode({
                text: data.name,
                icon: data.url,
                data: data,
                leaf:true,
                cls: 'image-node',
                qtip: data.qtip
            }));
        }
        return treeNodes;
    },
    
    // the default action is to "highlight" after a bad drop
    // but since an image can't be highlighted, let's frame it 
    afterRepair:function(){
        for(var i = 0, len = this.dragData.nodes.length; i < len; i++){
            Ext.fly(this.dragData.nodes[i]).frame('#8db2e3', 1);
        }
        this.dragging = false;    
    },
    
    // override the default repairXY with one offset for the margins and padding
    getRepairXY : function(e){
        if(!this.dragData.multi){
            var xy = Ext.Element.fly(this.dragData.ddel).getXY();
            xy[0]+=3;xy[1]+=3;
            return xy;
        }
        return false;
    }
});

// Utility functions

String.prototype.ellipse = function(maxLength){
    if(this.length > maxLength){
        return this.substr(0, maxLength-3) + '...';
    }
    return this;
};

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩免费高清视频| 欧美视频在线一区二区三区 | 99免费精品视频| av不卡免费电影| 欧美日韩午夜在线| 久久99精品国产麻豆婷婷洗澡| 亚洲一级片在线观看| 成人黄页毛片网站| 亚洲综合av网| 久久久综合九色合综国产精品| 亚洲一区二区三区中文字幕在线| 日本乱人伦aⅴ精品| 亚洲成a天堂v人片| 亚洲国产高清在线观看视频| 国产精品午夜电影| 国产亚洲精品资源在线26u| 亚洲天堂精品视频| 国产黄人亚洲片| 精品三级av在线| 另类小说图片综合网| 欧美日韩国产成人在线免费| 一区二区三区成人| 色www精品视频在线观看| 国产精品成人在线观看| 丁香激情综合五月| 国产精品美女久久久久aⅴ| 国产精品小仙女| 久久嫩草精品久久久久| 免费在线观看成人| 日韩免费成人网| 国产在线一区二区综合免费视频| 日韩一区二区三区在线视频| 日本麻豆一区二区三区视频| 日韩一区二区电影在线| 麻豆久久一区二区| 26uuu亚洲综合色欧美| 国产精品亚洲第一区在线暖暖韩国| 久久人人97超碰com| 国产成人综合亚洲网站| 亚洲欧洲精品天堂一级| 91久久精品一区二区| 一区二区在线观看视频在线观看| 欧洲激情一区二区| 奇米在线7777在线精品| 欧美大片免费久久精品三p| 国产一区不卡在线| 国产清纯白嫩初高生在线观看91 | 精品国产一区二区在线观看| 国产制服丝袜一区| 国产精品久久久久7777按摩| 色综合 综合色| 同产精品九九九| 精品久久久久久综合日本欧美| 国内精品国产三级国产a久久 | 91久久精品国产91性色tv| 亚洲丝袜精品丝袜在线| 欧美日韩激情一区| 国产一区二区三区观看| 国产精品国产三级国产普通话99| 91久久奴性调教| 久久精品国产在热久久| 最新国产の精品合集bt伙计| 精品污污网站免费看| 国模一区二区三区白浆| 亚洲免费观看高清完整版在线观看| 欧美男男青年gay1069videost | 日本电影欧美片| 奇米色一区二区| 国产精品福利一区| 欧美日本国产一区| caoporen国产精品视频| 日本美女视频一区二区| 17c精品麻豆一区二区免费| 欧美日韩国产免费| 波多野结衣中文一区| 婷婷综合另类小说色区| 中文字幕av一区二区三区免费看| 在线不卡中文字幕播放| 99久久国产综合精品女不卡 | 日本最新不卡在线| 国产精品久99| www一区二区| 欧美日韩黄色一区二区| 成人av在线看| 国产高清在线精品| 奇米精品一区二区三区四区| 亚洲女子a中天字幕| 国产欧美日韩激情| 精品国产免费人成电影在线观看四季 | 成人黄色国产精品网站大全在线免费观看 | 国产盗摄一区二区| 青青草精品视频| 亚洲老司机在线| 中文幕一区二区三区久久蜜桃| 亚洲天堂精品视频| 久久久国产一区二区三区四区小说 | 一区二区三区国产精品| 国产精品久久影院| 国产欧美日韩中文久久| www一区二区| 2021国产精品久久精品 | 欧美日韩国产三级| 色婷婷激情综合| 91亚洲国产成人精品一区二三| 激情综合网激情| 麻豆精品在线视频| 免费观看30秒视频久久| 日韩高清不卡在线| 日韩中文欧美在线| 亚洲成人自拍偷拍| 午夜精品久久久久久久99水蜜桃| 一区2区3区在线看| 亚洲国产一区在线观看| 亚洲成年人影院| 午夜久久久久久久久| 午夜视频久久久久久| 日韩经典一区二区| 免费成人小视频| 国产精品综合二区| 成人小视频在线| 91一区二区在线| 91久久精品日日躁夜夜躁欧美| 欧美亚洲一区三区| 欧美精品乱人伦久久久久久| 在线综合亚洲欧美在线视频| 精品三级av在线| 男女性色大片免费观看一区二区 | 国产99久久久国产精品免费看 | 国产一本一道久久香蕉| 国产999精品久久久久久| 99热国产精品| 欧美日韩国产首页在线观看| 欧美成人综合网站| 国产精品久久久久久久久免费樱桃 | 免费的国产精品| 国产成人一区二区精品非洲| 99久久精品免费看| 欧美精品在线一区二区三区| 日韩精品一区二| 国产欧美一区二区精品秋霞影院| 亚洲视频一区在线观看| 日韩精品免费视频人成| 国产最新精品免费| 91免费精品国自产拍在线不卡| 欧美日韩一区二区三区四区五区| 日韩精品在线看片z| 国产精品久久久久久久久快鸭| 亚洲国产精品一区二区久久恐怖片| 琪琪久久久久日韩精品| 99热在这里有精品免费| 欧美一卡2卡3卡4卡| 中文字幕日韩av资源站| 日韩高清不卡一区| 99精品偷自拍| 精品国产a毛片| 亚洲大片免费看| 波多野洁衣一区| 久久综合五月天婷婷伊人| 日韩理论片一区二区| 久久99久久99小草精品免视看| av一本久道久久综合久久鬼色| 欧美日韩黄色一区二区| 国产精品高潮呻吟| 国产在线国偷精品产拍免费yy| 色综合 综合色| 国产精品私房写真福利视频| 日韩不卡手机在线v区| 久久午夜老司机| 婷婷国产在线综合| 99r国产精品| 久久久91精品国产一区二区精品 | 麻豆91小视频| 在线免费观看成人短视频| 久久久久久一级片| 麻豆精品在线播放| 欧美精品一二三区| 亚洲国产美女搞黄色| 91视频在线观看免费| 欧美国产丝袜视频| 国产河南妇女毛片精品久久久| 日韩欧美国产综合在线一区二区三区| 亚洲欧美一区二区三区久本道91| 国产一区不卡视频| 久久先锋资源网| 国产精品一区二区在线观看网站| 日韩一本二本av| 奇米综合一区二区三区精品视频| 欧美日韩免费电影| 亚洲国产美女搞黄色| 欧美日韩综合不卡| 亚洲与欧洲av电影| 欧美日韩亚洲国产综合| 亚洲午夜免费电影| 欧美性做爰猛烈叫床潮| 亚洲一区二区三区激情| 91福利国产成人精品照片| 亚洲精品大片www| 在线观看av一区二区| 亚洲资源中文字幕| 欧美三级日韩在线|