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

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

?? ddview.js

?? struts2結合ext參數(shù)傳遞
?? JS
?? 第 1 頁 / 共 2 頁
字號:
/*
 * Ext JS Library 2.2
 * Copyright(c) 2006-2008, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */

/* * Software License Agreement (BSD License) * Copyright (c) 2008, Nige "Animal" White * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * *     * Redistributions of source code must retain the above copyright notice, *       this list of conditions and the following disclaimer. *     * Redistributions in binary form must reproduce the above copyright notice, *       this list of conditions and the following disclaimer in the documentation *       and/or other materials provided with the distribution. *     * Neither the name of the original author nor the names of its contributors *       may be used to endorse or promote products derived from this software *       without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. *//** * @class Ext.ux.DDView * <p>A DnD-enabled version of {@link Ext.DataView}. Drag/drop is implemented by adding * {@link Ext.data.Record}s to the target DDView. If copying is not being performed, * the original {@link Ext.data.Record} is removed from the source DDView.</p> * @constructor * Create a new DDView * @param {Object} config The configuration properties. */Ext.ux.DDView = function(config) {    if (!config.itemSelector) {        var tpl = config.tpl;        if (this.classRe.test(tpl)) {            config.tpl = tpl.replace(this.classRe, 'class=$1x-combo-list-item $2$1');        }        else {            config.tpl = tpl.replace(this.tagRe, '$1 class="x-combo-list-item" $2');        }        config.itemSelector = ".x-combo-list-item";    }    Ext.ux.DDView.superclass.constructor.call(this, Ext.apply(config, {        border: false    }));};Ext.extend(Ext.ux.DDView, Ext.DataView, {    /**     * @cfg {String/Array} dragGroup The ddgroup name(s) for the View's DragZone (defaults to undefined).     */    /**     * @cfg {String/Array} dropGroup The ddgroup name(s) for the View's DropZone (defaults to undefined).     */    /**     * @cfg {Boolean} copy Causes drag operations to copy nodes rather than move (defaults to false).     */    /**     * @cfg {Boolean} allowCopy Causes ctrl/drag operations to copy nodes rather than move (defaults to false).     */    /**     * @cfg {String} sortDir Sort direction for the view, 'ASC' or 'DESC' (defaults to 'ASC').     */    sortDir: 'ASC',    // private    isFormField: true,    classRe: /class=(['"])(.*)\1/,    tagRe: /(<\w*)(.*?>)/,    reset: Ext.emptyFn,    clearInvalid: Ext.form.Field.prototype.clearInvalid,    // private    afterRender: function() {        Ext.ux.DDView.superclass.afterRender.call(this);        if (this.dragGroup) {            this.setDraggable(this.dragGroup.split(","));        }        if (this.dropGroup) {            this.setDroppable(this.dropGroup.split(","));        }        if (this.deletable) {            this.setDeletable();        }        this.isDirtyFlag = false;        this.addEvents(            "drop"        );    },    // private    validate: function() {        return true;    },    // private    destroy: function() {        this.purgeListeners();        this.getEl().removeAllListeners();        this.getEl().remove();        if (this.dragZone) {            if (this.dragZone.destroy) {                this.dragZone.destroy();            }        }        if (this.dropZone) {            if (this.dropZone.destroy) {                this.dropZone.destroy();            }        }    },	/**	 * Allows this class to be an Ext.form.Field so it can be found using {@link Ext.form.BasicForm#findField}.	 */    getName: function() {        return this.name;    },	/**	 * Loads the View from a JSON string representing the Records to put into the Store.     * @param {String} value The JSON string	 */    setValue: function(v) {        if (!this.store) {            throw "DDView.setValue(). DDView must be constructed with a valid Store";        }        var data = {};        data[this.store.reader.meta.root] = v ? [].concat(v) : [];        this.store.proxy = new Ext.data.MemoryProxy(data);        this.store.load();    },	/**	 * Returns the view's data value as a list of ids.     * @return {String} A parenthesised list of the ids of the Records in the View, e.g. (1,3,8).	 */    getValue: function() {        var result = '(';        this.store.each(function(rec) {            result += rec.id + ',';        });        return result.substr(0, result.length - 1) + ')';    },    getIds: function() {        var i = 0, result = new Array(this.store.getCount());        this.store.each(function(rec) {            result[i++] = rec.id;        });        return result;    },    /**     * Returns true if the view's data has changed, else false.     * @return {Boolean}     */    isDirty: function() {        return this.isDirtyFlag;    },	/**	 * Part of the Ext.dd.DropZone interface. If no target node is found, the	 * whole Element becomes the target, and this causes the drop gesture to append.	 */    getTargetFromEvent : function(e) {        var target = e.getTarget();        while ((target !== null) && (target.parentNode != this.el.dom)) {            target = target.parentNode;        }        if (!target) {            target = this.el.dom.lastChild || this.el.dom;        }        return target;    },	/**	 * Create the drag data which consists of an object which has the property "ddel" as	 * the drag proxy element.	 */    getDragData : function(e) {        var target = this.findItemFromChild(e.getTarget());        if(target) {            if (!this.isSelected(target)) {                delete this.ignoreNextClick;                this.onItemClick(target, this.indexOf(target), e);                this.ignoreNextClick = true;            }            var dragData = {                sourceView: this,                viewNodes: [],                records: [],                copy: this.copy || (this.allowCopy && e.ctrlKey)            };            if (this.getSelectionCount() == 1) {                var i = this.getSelectedIndexes()[0];                var n = this.getNode(i);                dragData.viewNodes.push(dragData.ddel = n);                dragData.records.push(this.store.getAt(i));                dragData.repairXY = Ext.fly(n).getXY();            } else {                dragData.ddel = document.createElement('div');                dragData.ddel.className = 'multi-proxy';                this.collectSelection(dragData);            }            return dragData;        }        return false;    },    // override the default repairXY.    getRepairXY : function(e){        return this.dragData.repairXY;    },	// private    collectSelection: function(data) {        data.repairXY = Ext.fly(this.getSelectedNodes()[0]).getXY();        if (this.preserveSelectionOrder === true) {            Ext.each(this.getSelectedIndexes(), function(i) {                var n = this.getNode(i);                var dragNode = n.cloneNode(true);                dragNode.id = Ext.id();                data.ddel.appendChild(dragNode);                data.records.push(this.store.getAt(i));                data.viewNodes.push(n);            }, this);        } else {            var i = 0;            this.store.each(function(rec){                if (this.isSelected(i)) {                    var n = this.getNode(i);                    var dragNode = n.cloneNode(true);                    dragNode.id = Ext.id();                    data.ddel.appendChild(dragNode);                    data.records.push(this.store.getAt(i));                    data.viewNodes.push(n);                }                i++;            }, this);        }    },	/**	 * Specify to which ddGroup items in this DDView may be dragged.     * @param {String} ddGroup The DD group name to assign this view to.	 */    setDraggable: function(ddGroup) {        if (ddGroup instanceof Array) {            Ext.each(ddGroup, this.setDraggable, this);            return;        }        if (this.dragZone) {            this.dragZone.addToGroup(ddGroup);        } else {            this.dragZone = new Ext.dd.DragZone(this.getEl(), {                containerScroll: true,                ddGroup: ddGroup            });            // Draggability implies selection. DragZone's mousedown selects the element.            if (!this.multiSelect) { this.singleSelect = true; }            // Wire the DragZone's handlers up to methods in *this*            this.dragZone.getDragData = this.getDragData.createDelegate(this);            this.dragZone.getRepairXY = this.getRepairXY;            this.dragZone.onEndDrag = this.onEndDrag;        }    },	/**	 * Specify from which ddGroup this DDView accepts drops.     * @param {String} ddGroup The DD group name from which to accept drops.	 */    setDroppable: function(ddGroup) {        if (ddGroup instanceof Array) {            Ext.each(ddGroup, this.setDroppable, this);            return;        }        if (this.dropZone) {            this.dropZone.addToGroup(ddGroup);        } else {            this.dropZone = new Ext.dd.DropZone(this.getEl(), {                owningView: this,                containerScroll: true,                ddGroup: ddGroup            });            // Wire the DropZone's handlers up to methods in *this*            this.dropZone.getTargetFromEvent = this.getTargetFromEvent.createDelegate(this);            this.dropZone.onNodeEnter = this.onNodeEnter.createDelegate(this);            this.dropZone.onNodeOver = this.onNodeOver.createDelegate(this);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91视频一区二区| 亚洲国产精品久久一线不卡| 国产麻豆精品theporn| 欧美大片免费久久精品三p| 精品一区二区三区免费观看| 久久麻豆一区二区| 99re免费视频精品全部| 亚洲成人动漫一区| 日韩欧美久久一区| 国产不卡视频一区二区三区| 亚洲美女电影在线| 在线成人av网站| 国产老肥熟一区二区三区| 日本一区二区在线不卡| 色999日韩国产欧美一区二区| 亚洲午夜在线电影| 欧美一级在线视频| 成人午夜视频免费看| 一区二区三区在线看| 日韩欧美黄色影院| proumb性欧美在线观看| 亚洲国产美女搞黄色| 久久久精品国产免费观看同学| av电影在线观看一区| 蜜桃免费网站一区二区三区 | 91 com成人网| 国产精品一区二区x88av| 亚洲靠逼com| 2024国产精品| 欧美三级资源在线| 国产在线精品一区二区| 亚洲美女在线国产| 久久亚洲综合色| 欧美午夜片在线看| 国产精品香蕉一区二区三区| 亚洲福利视频一区| 中文字幕一区二区三区在线观看| 欧美疯狂性受xxxxx喷水图片| 成人影视亚洲图片在线| 丝袜亚洲精品中文字幕一区| 中文字幕在线免费不卡| 精品久久久久久久一区二区蜜臀| 一本一本久久a久久精品综合麻豆| 蜜臀久久99精品久久久画质超高清| 亚洲人成人一区二区在线观看| 2014亚洲片线观看视频免费| 欧美色涩在线第一页| 99精品视频在线免费观看| 久久av资源网| 蜜臀精品久久久久久蜜臀| 亚洲免费资源在线播放| 国产精品无码永久免费888| 日韩欧美中文字幕公布| 欧美高清视频一二三区| 91传媒视频在线播放| 国产成人精品www牛牛影视| 美女一区二区在线观看| 日韩激情一二三区| 亚洲电影视频在线| 亚洲一级二级在线| 一区二区三区视频在线看| 国产精品久久久久一区二区三区共| 2024国产精品视频| 精品国产成人系列| 337p粉嫩大胆色噜噜噜噜亚洲| 7777女厕盗摄久久久| 欧美精品一二三区| 欧美福利一区二区| 欧美老人xxxx18| 在线成人免费视频| 91精选在线观看| 麻豆精品视频在线| 一区二区久久久久久| 亚洲一区二区三区国产| 国产精品欧美经典| 亚洲国产激情av| 中文字幕欧美激情| 亚洲欧洲精品天堂一级| 一色屋精品亚洲香蕉网站| 国产精品久久免费看| 亚洲三级久久久| 亚洲一区免费视频| 日韩成人一区二区| 国产综合成人久久大片91| 国产精品888| 不卡一卡二卡三乱码免费网站| eeuss国产一区二区三区| 色综合久久66| 欧美剧情片在线观看| 欧美变态凌虐bdsm| 亚洲国产精品高清| 亚洲黄一区二区三区| 香蕉久久一区二区不卡无毒影院| 一区二区免费看| 亚洲成人动漫在线免费观看| 日韩成人精品视频| 国内欧美视频一区二区| 国产91清纯白嫩初高中在线观看 | 亚洲欧美自拍偷拍| 亚洲精品精品亚洲| 日韩高清欧美激情| 成人在线综合网| 欧美午夜一区二区三区免费大片| 欧美一级黄色片| 国产精品午夜在线观看| 一区二区三区四区在线免费观看| 奇米精品一区二区三区在线观看一 | 日韩中文字幕91| 国产一区在线视频| 一本色道久久加勒比精品 | 久久久久久久久久电影| 亚洲人一二三区| 日本特黄久久久高潮| 成人在线视频一区二区| 欧美区视频在线观看| 国产欧美日本一区视频| 亚洲成精国产精品女| 国产成人精品影视| 欧美三级中文字| 中文字幕av一区二区三区高| 亚洲成年人网站在线观看| 国产福利视频一区二区三区| 欧美亚洲自拍偷拍| 国产欧美精品在线观看| 三级不卡在线观看| 99久久婷婷国产| 日韩三级电影网址| 亚洲综合久久av| 成人中文字幕电影| 精品裸体舞一区二区三区| 亚洲精品写真福利| 国产成人av自拍| 这里只有精品电影| 亚洲美女精品一区| 国产69精品久久777的优势| 91精品国产综合久久久久久久| 国产精品伦理在线| 激情五月婷婷综合| 在线电影国产精品| 亚洲一区二区三区在线播放| 国产91高潮流白浆在线麻豆 | 精品视频在线视频| 国产精品国产精品国产专区不蜜 | 国产99久久久久久免费看农村| 欧美日韩在线播放| 一区二区三区四区精品在线视频| 国产精品一二三区在线| 精品免费国产一区二区三区四区| 亚洲午夜精品久久久久久久久| 99精品在线免费| 中文子幕无线码一区tr| 国产东北露脸精品视频| 日韩美女一区二区三区四区| 日韩精品一级中文字幕精品视频免费观看 | 麻豆久久久久久久| 欧美妇女性影城| 亚瑟在线精品视频| 欧美日韩精品福利| 午夜精品福利一区二区三区av| 欧美艳星brazzers| 香蕉av福利精品导航| 欧美视频在线一区二区三区 | 一本久久综合亚洲鲁鲁五月天| 亚洲国产精品二十页| 国产成人免费在线观看| 久久久久久久电影| 国产成人免费在线视频| 久久久99精品免费观看不卡| 国产超碰在线一区| 中文字幕av在线一区二区三区| 成人黄色免费短视频| 成人免费视频在线观看| 99热国产精品| 亚洲一区二区偷拍精品| 欧美日韩一区二区三区在线| 亚洲中国最大av网站| 欧美日韩国产系列| 日本vs亚洲vs韩国一区三区二区| 日韩一区二区在线免费观看| 黄色精品一二区| 日本一区二区成人在线| 色婷婷av久久久久久久| 亚洲国产日韩精品| 日韩欧美自拍偷拍| 国产成人亚洲综合a∨猫咪| 亚洲欧洲精品天堂一级| 欧美日韩在线一区二区| 久久99精品国产91久久来源| 国产亚洲婷婷免费| 日本久久电影网| 青娱乐精品视频在线| 国产午夜精品久久| 日本高清无吗v一区| 日韩精品电影在线观看| 久久综合久久综合亚洲| 91在线小视频| 全部av―极品视觉盛宴亚洲| 国产亚洲精久久久久久| 欧美在线影院一区二区| 黑人巨大精品欧美一区|