欧美精品在线一区二区三区_亚洲女同精品视频_日韩一区免费_国产欧美久久久精品免费_国产这里只有精品_僵尸再翻生在线观看_久久99精品国产一区二区三区_亚洲免费一区二区_女教师淫辱の教室蜜臀av软件_中文字幕国产一区二区

Google HTML5 訓練營

2011-11-16    藍藍設計的小編

轉載藍藍設計(   www.ocunn.cn  )是一家專注而深入的設計機構 ,為期望卓越的國內外企業提供有效的   BS界面設計  cs界面設計  ipad界面設計  包裝設計  圖標定制  用戶體驗  、交互設計、   網站建設  、平面設計服務 Google HTML5 訓練營

先簡單介紹一下這個訓練營的活動流程:
   1:00 – 1:30 注冊
   1:30 – 2:30 HTML5 技術剖析
   技術講座1 —— Google 工程師
   技術講座2 —— 特邀嘉賓(李靖威、李繼成,就職于人人網)
   2:30 – 3:00 宣布競賽規則,開始組隊
   3:00 – 6:30 作品創作 / 提交
   6:30 – 7:00 作品展示
   7:00 – 7:30 評獎、頒獎

  講座部分,先是Google工程師寒蕊MM跟我們分享了些HTML5的新技術概況,其中大致包括:sessionStorage localStorage Web SQL DateBase Indexed DB ,寒蕊MM還專門寫了篇關于IndexedDB的文章《客戶端數據存儲》 ,文章用實例的方式講了Web Storage(localStorage)、Web SQL Database 和 Indexed Database的用法。

  其中Web SQL Database雖是HTML5的技術,但由于某些原因,W3C組織(Web Applications Working Group)已不再維護這項技術,也就是說雖然目前Chrome、FireFox新版本瀏覽器支持這項技術,但不一定未來的版本還會支持。以下為w3c官網的聲明:

Beware. This specification is no longer in active maintenance and the Web
Applications Working Group does not intend to maintain it further.

  Indexed DataBase最初是由Oracle提出的數據庫API,沒記錯的話起初叫做Simple DataBase,之后演變成Indexed DataBase,而且已被Chrome和FireFox(版本4)所支持。

  這次活動規模比較小,由于人數限制在了30人,所以組隊Coding階段,每隊5人,分成了6組~接下來就是短短3個小時左右的Coding了,我們人人網的四個人和另一位有Canvas經驗的邱亮同學一起開發一個純HTML5的可涂鴉日記本,其中有個插曲:一開始項目名字沒多想就直接叫做《我的日記本》了,到最后提交項目的時候,Google MM說要起一個簡潔且酷一些的名字,好吧,那我們就起一個簡潔酷一些的名字,最后就叫《我日》!哇咔咔~讓大家”賤笑”了~

html5-daily-book

  言歸正傳,《我日》項目之所以叫純HTML5,其實只是使用了些HTML5技術,在短短的3個小時時間,從功能到分工開發,時間很緊~所以只是做了個小小的Demo版,基本功能實現的差不多了,但愿以后還能有時間把它完善一下~其中使用了這些HTML5技術:

  1.Web SQL DataBase :存取日記數據
  2.HTML5 Drag&Drop 事件 :監聽網頁內圖片拖拽及本地圖片直接拖拽到日記中的事件
  3.FileReader :獲取本地圖片拖拽到日記本里的圖片數據
  4.Canvas :實現日記涂鴉功能(畫筆、調色、文字、圖片繪制到畫布等…)
  5.HTML5新標簽 :如:<input type=”range”… /> 、 <section> 、<article>等…
  6.CSS3

  今天我只詳細講講我的分工部分:HTML5 Drag & Drop 和 FireReader這兩個東西,以后有機會在和大家分享其他技術。

HTML5 Drag & Drop 事件

  過去我們想實現網頁中的拖拽效果,基本上都是使用DOM事件模型中的mousedown、mousemove、mouseup的事件監聽來模擬拖拽效果,為了實現實時的拖拽移動效果,還要不停地獲取鼠標的坐標,還要不停的修改元素的位置,代碼要堆很多,而且性能上也很不好(不停地修改元素位置會導致頁面reflow,除非絕對定位),現在有了html5原生的Drag & Drop 拖拽事件,真的是方便了許多,用”事半功倍”來形容絕不為過。

Drag & Drop 包括以下事件

  • dragstart :要被拖拽的元素開始拖拽時觸發,這個事件對象是被拖拽元素
  • dragenter :拖拽元素進入目標元素時觸發,這個事件對象是目標元素
  • dragover :拖拽某元素在目標元素上移動時觸發,這個事件對象是目標元素
  • dragleave :拖拽某元素離開目標元素時觸發,這個事件對象是目標元素
  • dragend :在drop之后觸發,就是拖拽完畢時觸發,這個事件對象是被拖拽元素
  • drop :將被拖拽元素放在目標元素內時觸發,這個事件對象是目標元素

完成一次成功頁面內元素拖拽的行為事件過程應該是: dragstart –> dragenter –> dragover –> drop –> dragend

Drag & Drop 網頁內的元素拖拽:

  HTML5為元素新增了用于拖拽的屬性draggable ,這個屬性決定了元素是否能被拖拽,如果draggable=”true”,則元素可被拖拽,否則只能選擇元素的文本。

  值得一提的是HTML5支持拖拽數據存儲,使用dataTransfer 接口,作用于元素的拖拽基礎上,dataTransfer對象包含以下屬性和方法:

  • dataTransfer.dropEffect [ = value ] :返回已選擇的拖放效果,如果該操作效果與起初設置的effectAllowed效果不符,則拖拽操作失敗。可以設置修改,包含這幾個值:“none”, “copy”, “link” 和 “move”
  • dataTransfer.effectAllowed [ = value ] :返回允許執行的拖拽操作效果,可以設置修改,包含這些值:“none”, “copy”, “copyLink”, “copyMove”, “link”, “linkMove”, “move”, “all” 和 “uninitialized”
  • dataTransfer.types :返回在dragstart事件出發時為元素存儲數據的格式,如果是外部文件的拖拽,則返回”files”
  • dataTransfer.clearData ( [ format ] ) :刪除指定格式的數據,如果未指定格式,則刪除當前元素的所有攜帶數據
  • dataTransfer.setData(format, data) :為元素添加指定數據
  • dataTransfer.getData(format) :返回指定數據,如果數據不存在,則返回空字符串
  • dataTransfer.files :如果是拖拽文件,則返回正在拖拽的文件列表FileList
  • dataTransfer.setDragImage(element, x, y) :制定拖拽元素時跟隨鼠標移動的圖片,x、y分別是相對于鼠標的坐標(據測試,Chrome暫不支持)
  • dataTransfer.addElement(element) :添加一起跟隨拖拽的元素,如果你想讓某個元素跟隨被拖拽元素一同被拖拽,則使用此方法(據測試,Chrome暫不支持)

在dragstart事件觸發時可以為被拖拽元素存儲數據,就是使用上面說到的dataTransfer.setData ,setData的數據格式一般有兩種:”text/plain”(用于文本數據)和”text/uri-list”(用于url),你可以先為某個可拖拽元素設置微數據,然后為它設置draggable屬性為true,之后在其dragstart事件觸發時存儲數據:
html部分:



1
2
 

<div id = "dragMe" builddate= "2011-1-10" draggable= "true" > 拖拽我!</ div >
<div id = "dropHere" ></ div >

javascript部分:



1
2
3
4
5
 

var oDragMe = document.getElementById ( 'dragMe' ) ;

oDragMe.addEventListener ( 'dragstart' , function ( e) {
  e.dataTransfer .setData ( 'text/plain' , e.target .getAttribute ( 'builddate' ) ) ;
} , false )

在拖拽結束的時候便可以獲取相應元素的數據:



1
2
3
4
5
6
 

var oDropBox = document.getElementById ( 'dropHere' ) ,
  tmpData;

oDropBox .addEventListener ( 'drop' , function ( e) {
  tmpData = e.dataTransfer .getData ( 'text/plain' ) ;
} , false )

創建拖拽事件監聽的時候記得要把默認的行為事件去掉,畢竟瀏覽器是有默認拖拽行為的,尤其是dragover事件一定要使用e.preventDefault(),不然drop事件可能不會被觸發:



1
2
3
4
 

oDropBox .addEventListener ( 'dragover' , function ( e) {
  e.stopPropagation ( ) ;
     e.preventDefault ( ) ;
} , false )

上面講的這些基本上就能完成頁面內元素的拖拽操作了,下面我們來說說從本地拖拽圖片到頁面元素中用到的技術:

FileReader獲取本地拖拽文件

點擊查看實例Demo

  作為 File API 的一部分,FileReader 專門用于讀取文件,根據 W3C 的定義,FileReader 接口 “提供一些讀取文件的方法與一個包含讀取結果的事件模型”。

來看看FileReader支持的方法、屬性和事件:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 

[ Constructor]
interface FileReader {

  // 異步讀取方法
  void readAsArrayBuffer( in Blob blob) ;
  void readAsBinaryString( in Blob blob) ;
  void readAsText( in Blob blob, [ Optional] in DOMString encoding) ;
  void readAsDataURL( in Blob blob) ;

  void abort( ) ;

  // 狀態
  const unsigned short EMPTY = 0 ;
  const unsigned short LOADING = 1 ;
  const unsigned short DONE = 2 ;
 
 
  readonly attribute unsigned short readyState;

  // 文件或二進制數據
  readonly attribute any result;
 
  readonly attribute FileError error;

  // 事件處理
  attribute Function onloadstart;
  attribute Function onprogress;
  attribute Function onload ;
  attribute Function onabort;
  attribute Function onerror ;
  attribute Function onloadend;

} ;
FileReader implements EventTarget;

今天只說說關于拖拽本地文件到頁面的幾個相關FileReader屬性和事件:

  • readAsDataURL方法 :參數為要讀取的文件對象,將文件讀取為DataUrl
  • onload事件 :當讀取文件成功完成的時候觸發此事件

在FileReader onload事件觸發后,你可以通過this.result 來獲取讀取的文件數據,如果是圖片,將返回base64格式的圖片數據。



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 

//一定要在dragover事件中取消默認拖拽行為,不然drop事件會失效
oDropBox.addEventListener ( 'dragover' , function ( e) {
      e.stopPropagation ( ) ;
      e.preventDefault ( ) ;
} , false ) ;
oDropBox.addEventListener ( 'drop' , handleDrop, false ) ;

function handleDrop( e) {
  e.stopPropagation ( ) ;
  e.preventDefault ( ) ;

  var fileList  = e.dataTransfer .files ,   //獲取拖拽文件
    oImg = document.createElement ( 'img' ) ,
    reader = new FileReader( ) ;

  reader.onload = function ( e) {
    oImg.src = this .result ;
    oDropBox.appendChild ( oImg) ;
  }
  reader.readAsDataURL ( fileList[ 0 ] ) ;   //這里只取拖拽的第一個,實際中你可以遍歷處理file列表

OK,通過以上代碼你就可以完成基本的本地圖片拖拽到頁面指定元素內的功能了。
點擊查看實例Demo

《我日》Demo 預覽

注意,以上demo僅可使用新版Chrome和FireFox查看,IE不支持。

好了,今天先講這些,今后會更新更多HTML5 相關的技術的,希望大家多多關注~

日歷

鏈接

個人資料

藍藍設計的小編 http://www.ocunn.cn

存檔

日产精品99久久久久久| 成人黄页毛片网站| 欧美精品一区二区三区在线播放 | 国产乱淫av麻豆国产免费| 欧美美乳在线| 成人精品免费视频| 国产精品久久久久久久app| 永久免费毛片在线观看| 日韩福利影视| 欧美午夜精品伦理| 亚洲乱码日产精品bd在线观看| 亚洲精品国产手机| 成人性色生活片| 91免费在线视频网站| 欧美特黄一级视频| 久久亚洲一区二区三区四区| 一级做a爰片久久| 国产原创视频在线观看| 欧美小视频在线观看| 国产91在线免费观看| 久久成人福利| 久久在线视频在线| 中文字幕在线一| 99国产精品99久久久久久| 手机在线视频你懂的| 欧美色图天堂| 精品久久国产老人久久综合| 亚洲自拍偷拍图| 香蕉久久夜色精品| 久久手机视频| 国产一级在线| 亚洲精品国产a久久久久久| 只有这里有精品| www在线观看黄色| 精品久久久久久久久国产字幕 | 日本sm残虐另类| 亚洲a∨日韩av高清在线观看| 99视频国产精品免费观看a | 国产成人精品777777| 欧美/亚洲一区| 国产精品视频免费在线| 国产 日韩 欧美 精品| 欧美极品少妇xxxxⅹ高跟鞋 | 色香阁99久久精品久久久| 99久久久免费精品| 亚洲视频www| 欧美一进一出视频| 九色porny自拍视频在线播放| 欧美一区二区三区婷婷月色| 天天综合天天做| 国产精品18久久久久久久久久久久| 亚洲欧美日产图| 色在线免费观看| 国产亚洲免费的视频看| 91porny九色| 国产日韩欧美精品综合| 99国产精品久久久久久| 天天综合久久| 久久艹中文字幕| 国产精品4hu.www| 久久免费视频网站| 日本私人影院在线观看| 欧美午夜寂寞影院| 好吊操这里只有精品| 成熟老妇女视频| www.五月婷| 艳妇臀荡乳欲伦亚洲一区| xxxxxx黄色| 日本欧美大码aⅴ在线播放| 中文字幕一区二区三区久久网站| 国产精彩精品视频| 久久久精品99| 成人sese在线| 国产乱国产乱老熟300部视频| 亚洲一区观看| 日本一区二区黄色| 欧美在线三级| 艳母动漫在线免费观看| 久久av中文| 亚洲乱码一区二区三区三上悠亚| 亚洲狼人综合| 不卡一卡2卡3卡4卡精品在| **欧美日韩在线观看| 国产精品一区二区性色av | 欧美综合在线第二页| 久久久久久久久免费视频| 日韩欧美中文一区二区| 亚洲熟女乱综合一区二区| 欧美成人免费看| 成人羞羞视频在线看网址| 精品毛片久久久久久| 亚洲综合久久网| 亚洲欧美韩国综合色| 红桃视频国产精品| 黑人巨大国产9丨视频| 日韩激情在线| 三上悠亚久久精品| 欧美亚洲自偷自偷| 精产国品一区二区三区| 成人黄色网址在线观看| 国产又黄又粗的视频| 亚洲视频香蕉人妖| 久草热在线观看| 日韩欧美亚洲国产另类| 亚洲一区二区三区精品中文字幕| 亚洲无限av看| 污污的网站在线看| 91网在线免费观看| 第九色区aⅴ天堂久久香| 免费在线a视频| 青青草97国产精品免费观看无弹窗版 | 欧美日韩大片| 欧美日韩国产免费一区二区三区| 日本一区二区免费高清| 久久综合伊人77777麻豆最新章节| 久久99精品久久只有精品| 国产亚洲精品熟女国产成人| 亚洲福利视频三区| h色视频在线观看| 欧美亚洲第一页| 99国产精品免费网站| 无码专区aaaaaa免费视频| 国产一区二区三区在线看麻豆| 五月天丁香激情| 精品处破学生在线二十三| 视频免费一区| 精品伦理一区二区三区| 一区二区日韩免费看| 国产日韩精品中文字无码| 精品视频一区 二区 三区| 国产黄色片在线播放| 亚洲wwwav| 午夜亚洲性色福利视频| 91精品国产闺蜜国产在线闺蜜| 8x福利精品第一导航| 青春草免费在线视频| 亚洲啪啪av| 久久99精品国产麻豆婷婷| 国产 日韩 欧美 成人| 亚洲国产免费av| 欧美激情啪啪| 国产av无码专区亚洲精品| 一区二区三区丝袜| av播放在线观看| 免费电影一区| 成人性视频网站| 免费av网站在线播放| 国产精品第1页| 久久精品盗摄| 天天干,天天干| 色婷婷av一区二区| 黄色激情在线播放| 老太脱裤让老头玩ⅹxxxx| 一区二区三区四区亚洲| 欧美精品电影| 欧美美女黄色网| 亚洲国产欧美另类丝袜| 大桥未久在线播放| 激情视频综合网| 国产iv一区二区三区| 日本人视频jizz页码69| 欧美性色19p| 丁香高清在线观看完整电影视频| 久久av免费一区| 国产一区美女| 久久综合色8888| 免费在线视频一区二区| 日韩亚洲欧美成人| 中文字幕资源站| 亚洲欧美日韩天堂一区二区| 国产欧美日韩精品一区二区三区| 少妇精品无码一区二区免费视频| 亚洲性生活视频在线观看| 久久艹精品视频| 国产一区二区三区黄视频| 99在线无码精品入口| 9a蜜桃久久久久久免费| 99免费精品视频| 国产又粗又猛大又黄又爽| 欧美女孩性生活视频| 99ri日韩精品视频| 日本妇女毛茸茸| 国产精品爱久久久久久久| 国产91在线|亚洲| 欧美天天影院| 亚洲欧美自拍另类日韩| 国产视频久久网| 欧美破处大片在线视频| a级片在线播放| 制服国产精品| 91精品啪在线观看国产60岁| 精品99久久| 肉色超薄丝袜脚交| 亚洲美女av网站| 亚洲在线观看| 日本私人网站在线观看| 蜜桃免费在线视频| 中文字幕精品一区久久久久| 久久免费国产| 国产免费av在线| 国产精品19p| 91a在线视频| 欧美国产成人精品| 欧美国产中文高清| 国产精品免费精品一区| 日韩欧美视频一区二区三区四区| 在线视频一区二区三区| 日韩欧美1区| 天堂在线第六区| 国产在线a视频| 在线视频中文字幕一区二区| 蜜桃视频欧美| 免费观看的毛片| www.日日操| 色综合久久精品亚洲国产 | 国产**成人网毛片九色| 久久久久久久| 国产一区二区三区影院| 手机福利在线视频| 亚洲第一区在线观看| 国产一区二区视频在线| 成人精品国产| 91theporn国产在线观看| 秋霞无码一区二区| 欧美人与物videos| 中文字幕日韩一区二区| 欧美日韩123| 天堂在线中文视频| 精品国产一区二区三区久久久 | 老熟妇高潮一区二区高清视频| 欧美三级日本三级少妇99| 欧美日韩精品在线一区| 1024在线视频| 超碰caoprom| 国产精品免费在线| 亚洲韩国日本中文字幕| 成人小视频在线观看| 亚洲乱码一区| 亚洲欧美日韩动漫| 91麻豆精品国产自产在线| 激情欧美丁香| 三级中文字幕在线观看| 999精彩视频| 美女爽到呻吟久久久久| 国产在线精彩视频| 亚洲精品成人在线视频| 欧美三级午夜理伦三级| 激情开心成人网| 久久久久99精品成人片三人毛片| 欧美激情免费在线| 色94色欧美sute亚洲线路二 | 欧美一区二区三区另类 | 亚洲一级片av| 黑人巨大精品欧美一区二区小视频| 亚洲国产高清福利视频| 国产视频亚洲色图| 激情综合在线| 国产精品3区| 久久99久久| 欧美超碰在线观看| 免费a级黄色片| 男人添女荫道口图片| 91在线色戒在线| 亚洲午夜精品久久久久久性色 | 99r国产精品视频| 久久午夜a级毛片| 在线观看网站黄不卡| 国产欧美一区二区精品秋霞影院| 亚洲伦理精品| 欧美一性一交| 欧美性suv| av电影在线观看一区二区三区| 中文字幕在线播放日韩| 一区二区三区四区免费| 两根大肉大捧一进一出好爽视频| 久久久av水蜜桃| 国产精品电影一区| 中文字幕亚洲欧美一区二区三区 | 成人一级视频| 99热99re6国产在线播放| 最新中文字幕在线| 91tv国产成人福利| 久久久国产精品黄毛片| 亚洲精品视频久久久| youjizzxxxx18| 日本人妻伦在线中文字幕| 国产精品香蕉视屏| 国产精品久久久久久久天堂| 久久精品国亚洲| 亚洲二区中文字幕| 91精品国产综合久久婷婷香蕉 | 神马日本精品| 综合久久av| 色资源二区在线视频| 日本大片在线播放| 国产对白叫床清晰在线播放| 五月天久久久久久| 亚洲欧美激情在线观看| 成年免费在线观看| 538任你躁在线精品视频网站| 搡老熟女老女人一区二区| 在线观看欧美一区二区| 在线观看免费不卡av| 欧美牲交a欧美牲交aⅴ免费下载| www国产无套内射com| 伊人色综合影院| 五月婷婷综合色| 日韩一区二区三区资源| 色乱码一区二区三在线看| 久久久久久高清| 久久综合久久久| 国产在线视频欧美一区二区三区| 国产精品一区二区三区免费观看| 亚洲综合日韩在线| 国产欧美一区二区三区久久| 国产美女精品视频免费观看| 国产成人欧美在线观看| 国产精品黄色av| 亚洲一区二区久久久久久久| 国产伦精品一区二区| 久中文字幕一区| 国产大尺度在线观看| 久久综合久久网| 亚洲另类第一页| 欧美在线一级片| 操她视频在线观看| 国偷自拍第113页| 一级黄色片网站| 国产香蕉视频在线观看| 黄色av网址在线免费观看| av在线免费观看网址| 日韩一级二级| 亚洲警察之高压线| 欧美先锋影音| 国产精品亚洲午夜一区二区三区| www.激情成人| 午夜亚洲国产au精品一区二区| 在线免费观看成人短视频| 亚洲一区av| av在线不卡顿| 老司机精品福利视频| 99国产精品视频免费观看| 亚洲精品成人| 国产福利电影在线播放| 福利一区视频| av资源久久| 奇米影视在线99精品| 国产美女性感在线观看懂色av| 97在线观看免费观看高清 | 亚洲精品欧美激情| 日韩精品在线网站| 日韩小视频在线观看专区| 亚洲欧洲av一区二区| 国产精品久久77777| 亚洲一区二区在| 日本精品一二三| 五月综合色婷婷| 欧美在线观看黄| 看全色黄大色大片| 亚洲av无一区二区三区久久| 国产黄色免费视频| 欧美办公室脚交xxxx| 亚洲久久在线| 色综合久久天天| 91干在线观看| 91视频 - 88av| 国产午夜精品久久久久久久久| 黄色aaa毛片| 祥仔av免费一区二区三区四区| 日韩午夜一区| 亚洲午夜羞羞片| 色中色综合影院手机版在线观看| 人偷久久久久久久偷女厕| 国产精品扒开腿做爽爽爽a片唱戏 亚洲av成人精品一区二区三区 | 久久久久久黄| 精品国产乱码久久久久久虫虫漫画| 中文字幕日韩av电影| 日本一区二区免费看| 级毛片内射视频| 伊人网在线免费观看| 教室别恋欧美无删减版| 亚洲欧美一区二区在线观看| 欧美精品久久久久久久久| 国产精品999视频| 好看的av在线| 岛国精品在线| 国产99久久久久| 尤物yw午夜国产精品视频| 好色先生视频污| 日产精品久久久| 亚洲一区有码| 国产午夜精品一区二区三区视频 | 国产黄a三级三级三级| 日韩精品免费视频一区二区三区 | 久久免费少妇高潮久久精品99| 久久婷婷国产91天堂综合精品| a级片在线视频| 欧美一区二区性| 欧美日本精品一区二区三区| 国产精品一区二区三区不卡|