先看一下效果,以下是51AJAX.com站點首頁的效果,其中各個模塊 " /> 亚洲都市激情,99久久国产综合精品女不卡,一区二区三区黄色

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

Dojo之路:如何利用Dojo實現Drag and Drop效果

如今各種使用AJAX技術的站點都實現了Drag and Drop(拖動)效果,利用Dojo框架也可以很方便的實現,相比較其它框架,代碼更少,且對瀏覽器的兼容性支持比較好。

  先看一下效果,以下是51AJAX.com站點首頁的效果,其中各個模塊是可以任意拖動的:
  

  如何來實現呢?以下是具體步驟。為簡單起見,做了一個Drag and Drop的Demo頁面:

  
  以下是具體步驟:
  1.html部分
  要實現拖動,首先要有容器,其次要有可拖動的元素。在這里我們設置了三個Div作為容器,ID分別是container1,container2,container3,每個容器中各放置了一個Div作為可拖動元素,它們的class是divdrag。
  2.Javascript代碼  
  首先在頭部加入對dojo.js的引用,然后根據獲取class為divdrag的元素,把它們注冊為dojo.dnd.HtmlDragSource對象,再將container1,container2,container3注冊為三個容器,且指定容器中的可拖動元素可以被拖動到的容器,以上事件封裝成一個函數,增加至window.onload事件中。

    要下載完整的Dojo框架,請點擊這里下載:http://download.dojotoolkit.org/release-0.3.1/dojo-0.3.1-ajax.zip。
復制代碼 代碼如下:
//引用以下兩個dojo包 
dojo.require("dojo.style");
dojo.require("dojo.dnd.*");

function init(){
  //利用classname取到元素列表,將其注冊為dojo.dnd.HtmlDragSour
  var arr=dojo.html.getElementsByClass('divdrag')
  for(var i=0;i<arr.length;i++){
   var parentDiv=arr[i].parentNode.id
   new dojo.dnd.HtmlDragSource(arr[i],parentDiv);   
  }
  //定義容器 
     new dojo.dnd.HtmlDropTarget("container1", ["container1","container2","container3"]);   
     new dojo.dnd.HtmlDropTarget("container2", ["container1","container2","container3"]);   
     new dojo.dnd.HtmlDropTarget("container3", ["container1","container2","container3"]);       
}

//增加到window.onload事件中
window.onload=function(){init();}

JavaScript技術Dojo之路:如何利用Dojo實現Drag and Drop效果,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 哈尔滨市| 宜川县| 公安县| 朝阳县| 黄石市| 田东县| 嘉义县| 海原县| 通辽市| 剑河县| 玉溪市| 阳城县| 华蓥市| 永年县| 安丘市| 镇坪县| 元氏县| 利川市| 贵阳市| 石嘴山市| 花莲县| 讷河市| 蒙山县| 延边| 盐城市| 明光市| 闽清县| 高阳县| 平昌县| 枞阳县| 宜昌市| 陵水| 江永县| 沁源县| 常德市| 重庆市| 五常市| 宝山区| 四平市| 蒙阴县| 思南县|