详解与实例代码【澳门金莎娱乐网站】,让拖放

日期:2019-10-17编辑作者:澳门金莎娱乐网站

dropEffect 与 effectAllowed


dropEffecteffectAllowed 是日前说的 dataTransfer 对象的两日性子,有何用?轻巧地说,有四个用处,一是足以安装成分被拖拽时的鼠标准样品式,二是足以设置成分是不是可被停放。

那边自个儿测验了三款浏览器,chrome、ff 以致 uc,chrome 和 uc 表现日常。

貌似大家将成分脱离原来的地方,高弓足势会化为 “禁手”,直到成分被拖到可放置区域上。

澳门金莎娱乐网站 1

唯独 ff 不然,在 ff 中,成分在拖动的进度中不博览会示 “禁手”。

当元素被拖到可停放区域上时,私下认可滑囊炎势如下。

澳门金莎娱乐网站 2

实际上通过设置 dropEffecteffectAllowed 总共能设置三种成人骨坏死势(move, copy,以至 link),分别如下(move 和默许貌似一样):

澳门金莎娱乐网站 3

需要在 ondragstart 方法中设置 effectAllowed,在 ondragover 方法中装置 dropEffect。具体能够参考 demo代码。

作者们也足以对 dropEffect 和 effectAllowed 的值举办设定,让某 drop 成分只可以放 move 元素,也许 copy 成分等。具体能够看下那篇,HTML5法力堂:周密精晓Drag & Drop API,讲的很好。取值也得以参照高程 484 页。

一言以蔽之要明了的是,DnD 并不会帮您做到 copy 大概 move 的其他操作,而是供给顾客在 DnD 进度中,记录须要操作的靶子新闻,然后在 drop 事件中完毕 copy 恐怕 move 等的操作。

当成分被拖到可停放区域上时,默许坐骨神经痛势如下。

HTML5 拖放(Drag 和 Drop)详解与实例代码,html5drag

简介

拖放是一种普及的个性,即抓取对象未来拖到另多少个地方。

在 HTML5 中,拖放是行业内部的一某个,任何因素都可以拖放。

先点击贰个小例子:在客户最早拖动 <p> 成分时施行 JavaScript

<p draggable="true" ondragstart="myFunction(event)">拖动我!</p>

唤醒: 链接和图纸暗中同意是可拖动的,不要求 draggable 属性。

概念和用法

在拖放的长河中会触发之下事件:

  • 在拖动目的上接触事件 (源成分):  ondragstart - 客户最早拖动成分时接触
    • ondrag - 成分正在拖动时接触
    • ondragend - 顾客实现存分拖动后触发
  • 释放目的时接触的事件:  ondragenter - 当被鼠标拖动的对象步入其容器范围内时触发此事件
    • ondragover - 当某被拖动的指标在另一目的容器范围内拖动时触发那件事件
    • ondragleave - 当被鼠标拖动的指标离开其容器范围内时触发此事件
    • ondrop - 在二个拖动过程中,释放鼠标键时触发那事件

浏览器扶植

Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 扶助拖动。

小心:Safari 5.1.2不扶助拖动;在拖动成分时,每间隔 350 纳秒会触发 ondragover 事件。

实例

先贴代码,再逐条批注:

<!DOCTYPE html>
<html>
<head>
<title>HTML5拖拽</title>
<meta charset="utf-8">
<style>
#div1 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
</style>
</head>
<body>
<p>拖动img_w3slogo.gif图片到矩形框中:</p>
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
<br>
<img id="drag1" src="images/img_w3slogo.gif" draggable="true" ondragstart="drag(event)" width="300" height="56">

<script>
function allowDrop(ev){
    ev.preventDefault();
}

function drag(ev){
    ev.dataTransfer.setData("Text",ev.target.id);
}

function drop(ev){
    ev.preventDefault();
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
}

</script>
</body>
</html>

拖拽前的页面效果为:

 澳门金莎娱乐网站 4

上面分别来分析下方面代码的情趣。

设置成分可拖放

率先,为了使成分可拖动,把 draggable 属性设置为 true :

<img draggable="true">

拖动什么 - ondragstart 和 setData()

接下来,规定当成分被拖动时,会时有产生什么样。

在地点的例证中,ondragstart 属性调用了贰个函数,drag(event),它规定了被拖动的多少。

dataTransfer.setData() 方法设置被拖数据的数据类型和值:

function drag(ev)
{
    ev.dataTransfer.setData("Text",ev.target.id);
}

在这里个事例中,数据类型是 "Text",值是可拖动成分的 id ("drag1")。

嵌入哪个地方 - ondragover

ondragover 事件规定在哪个地方放置被拖动的数码。

私下认可地,不能够将数据/成分放置到别的因素中。假若急需设置允许放置,大家必得遏止对元素的暗中认可管理形式。

那要经过调用 ondragover 事件的 event.preventDefault() 方法:

event.preventDefault()

开展停放 - ondrop

当放置被拖数据时,会产生 drop 事件。

在地点的例证中,ondrop 属性调用了叁个函数,drop(event):

function drop(ev)
{
    ev.preventDefault();
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
}

代码解释:

  • 调用 preventDefault() 来幸免浏览器对数码的暗中认可处理(drop 事件的默许行为是以链接情势展开)
  • 因此 dataTransfer.getData("Text") 方法取得被拖的数码。该办法将回来在 setData() 方法中安装为同样类别的此外数据。
  • 被拖数据是被拖成分的 id ("drag1")
  • 把被拖成分追加到放置成分(目的成分)中

心想事成的结果如图:

澳门金莎娱乐网站 5 

dataTransfer对象

在拖曳操作的历程中,我们能够用过dataTransfer对象来传输数据,以便在拖曳操作结束的时候对数码实行其余的操作。

对象属性:

  • dropEffect:设置或重返拖放目标上同意产生的拖放行为。假如这里安装的拖放行为不再effectAllowed属性设置的有余拖放行为之内,拖放操作将会停业。该属性值只同意为“null”、“copy”、“link”和“move”四值之一。
  • effectAllowed:设置或回到被拖动元素允许产生的拖动行为。该属性值可设为“none”、“copy”、“copyLink”、“copyMove”、“link”、“linkMove”、“move”、“all”和“uninitialized”。
  • items:该属性重回DataTransferItems对象,该对象表示了拖动数据。
  • types:该属性重临三个DOMStringList对象,该对象包含了存入dataTransfer中数量的具备类型。

指标方法:

  • setData(format,data):将内定格式的数码赋值给dataTransfer对象,参数format定义数据的格式也正是数据的项目,data为待赋值的多少
  • getData(format):从dataTransfer对象中得到内定格式的数目,format代表数量格式,data为多少。
  • clearData([format]):从dataTransfer对象中删去钦定格式的数据,参数可选,若不提交,则为除去对象中持有的数目。
  • addElement(element):加多自定义图标
  • setDragImage(element,x,y):设置拖放操作的自定义图标。个中element设置自定义Logo,x设置Logo与鼠标在等级次序方向上的离开,y设置Logo与鼠标在笔直方向上的偏离。

Identify what is draggable

function dragstart_handler(ev) {
 console.log("dragStart");
 // Add the target element's id to the data transfer object
 ev.dataTransfer.setData("text/plain", ev.target.id);
}

<body>
 <p id="p1" draggable="true" ondragstart="dragstart_handler(event);">This element is draggable.</p>
</body>

Define the drag's data

function dragstart_handler(ev) {
  // Add the drag data
  ev.dataTransfer.setData("text/plain", ev.target.id);
  ev.dataTransfer.setData("text/html", "<p>Example paragraph</p>");
  ev.dataTransfer.setData("text/uri-list", "http://developer.mozilla.org");
}

Define the drag image

function dragstart_handler(ev) {
  // Create an image and then use it for the drag image.
  // NOTE: change "example.gif" to an existing image or the image 
  // will not be created and the default drag image will be used.
  var img = new Image(); 
  img.src = 'example.gif'; 
  ev.dataTransfer.setDragImage(img, 10, 10);
}

Define the drag effect

function dragstart_handler(ev) {
  // Set the drag effect to copy
  ev.dataTransfer.dropEffect = "copy";
}

Define a drop zone

function dragover_handler(ev) {
 ev.preventDefault();
 // Set the dropEffect to move
 ev.dataTransfer.dropEffect = "move"
}
function drop_handler(ev) {
 ev.preventDefault();
 // Get the id of the target and add the moved element to the target's DOM
 var data = ev.dataTransfer.getData("text");
 ev.target.appendChild(document.getElementById(data));
}
<body>
 <div id="target" ondrop="drop_handler(event);" ondragover="dragover_handler(event);">Drop Zone</div>
</body>

火狐浏览器拖拽难题

只是实行到那时候在火狐浏览器中开掘叁个标题:

html5的拖拽,用了preventDefault幸免弹出新页面,但在火狐下不实用?

消除办法:

document.body.ondrop = function (event) {
    event.preventDefault();
    event.stopPropagation();
} 

抑或对于地点的实例中,增多到ondrop方法里面也是足以的:

function drop(ev){
    ev.preventDefault();
    ev.stopPropagation();
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
}

如上便是本文的全部内容,希望对大家的学习抱有利于,也希望大家多多点拨帮客之家。

拖放(Drag 和 Drop)详解与实例代码,html5drag 简要介绍拖放是一种常见的特点,即抓取对象未来拖到另一个岗位。 在 HTML5中,拖放是标准...

Drag


第一大家须求钦命要拖动的因素,设置形式很轻松,给该 DOM 成分设置 draggable 属性,属性值设置为 true。举个例子那样:

<code> <img src="images/0.jpg" draggable="true" id="img0"/> </code>

1
2
3
<code>
  <img src="images/0.jpg" draggable="true" id="img0"/>
</code>

实际,以上代码节外生枝了,页面中的图片(img)、链接(带 href 的 a 标签)以至文本私下认可即为可拖动。为了统一,最棒依然都加上该 draggable 属性为好。

draggable 属性还也是有四个值,分别是 falseauto,看名就会知道意思,false 即设置为不可拖动,auto 即为浏览器暗中同意值。

当大家左键点击(按下)可拖动的 DOM 成分,轻轻移动,即触发 ondragstart 事件,该事件只会接触壹遍。经常大家会在 ondragstart 事件中著录正在被拖动的要素消息(ondrop 的时候好对其实行拍卖)。比如 demo 中记录了正在被拖动的因素 id:

for (var i = lis.length; i--; ) { lis[i].ondragstart = function(e) { e.dataTransfer.setData('id', e.target.id); }; }

1
2
3
4
5
for (var i = lis.length; i--; ) {
  lis[i].ondragstart = function(e) {
    e.dataTransfer.setData('id', e.target.id);
  };
}

澳门金莎娱乐网站 ,ondragstart 事件触发后,直到拖放事件截止,会平素触发 ondrag 事件。

大家也足以对 dropEffect 和 effectAllowed 的值进行设定,让某 drop 成分只好放 move 成分,只怕 copy 成分等。具体能够看下那篇,HTML5魔法堂:周详精通Drag & Drop API,讲的很好。取值也足以参见高程 484 页。

事件


上面已经涉及了 DnD 中的四个事件,dragstartdragover 以及 drop,其实 DnD 还大概有多少个事件,它们的爆发顺序是:

dragstart(drag元素) -> drag(drag元素) -> dragenter(drop元素) -> dragover(drop元素) -> dragleave(drop元素) -> drop(drop元素) -> dragend(drag元素)

1
dragstart(drag元素) -> drag(drag元素) -> dragenter(drop元素) -> dragover(drop元素) -> dragleave(drop元素) -> drop(drop元素) -> dragend(drag元素)

简单掌握,拖放事件始于时触发 ondragstart 事件,当被拖动成分步入可停放的要素时,触发 ondragenter 事件(ondragenter 并非在三个成分相交时即触发,而是该被拖拽元素在目的成分上移步一段时间后才触发),之后一段事件会持续触发 ondragover 事件(可参照他事他说加以考察mouseover),当被拖动成分离开可放置元素的眨眼间间,触发 ondragleave(和 ondragenter 对应) 事件,当松手鼠标并且被拖拽成分正万幸可放置成分上时,触发 ondrop 事件,当拖放事件停止时,触发 ondragend(和 ondragstart 对应) 事件,无论拖放操作是还是不是成功,均会触发该事件。

Drag

HTML5 — 让拖放变的流行起来

2015/12/29 · HTML5 · 4 评论 · 拖放

初稿出处: 韩子迟   

先上 Demo,尽量用 chrome,代码可参考 Github。

在 HTML5 出现从前,页面元素的拖放须求监听 mousedown、mouseover 以及mouseup 等一文山会海事件,然后改成成分的相持地方来完成这一功能。HTML DnD(Drag-and-Drop)API 的面世,使得拖放变的归纳。可是出于 DnD 尚处在草案阶段,各浏览器对其标准并未有统一,有些事件在分化浏览器中会出现分化作用。

要选择DnD,供给了解两件工作,一是索要拖动的因素,二是可放置拖动元素的职分。拖放无非是将成分从二个职位拖到另叁个职位。

var id = e.dataTransfer.getData('id')
, node = document.getElementById(id);

Tricks


再有多少个施行进度中发觉的主题材料。

将 Demo 在 ff 中开辟,图片拖到空处,会活动在新标签中打开图片,就算笔者早就在各个风浪中加上了 preventDefault(),尚不清楚原因。

一旦可拖拽成分,开端在五个可放置成分内部,先把成分拖出去,再放回来,将会触发 ondrop 事件,但是 e.target 却是被拖拽的因素。如若放置在别的因素,target 会指向被停放的要素,并非拖拽成分。这一点能够经过判别 target 成分获得化解。关于那点可以看下 w3cschool 的那个 demo,张开调控台,将图纸拖出去,再拖回来,调节台会打印出错误,显著代码未有思量到那或多或少。


Read More:

  • HTML 5 拖放
  • HTML5法力堂:周到精晓Drag & Drop API
  • HTML5 拖放API
  • HTML5拖放操作API及实例

    1 赞 6 收藏 4 评论

澳门金莎娱乐网站 6

轻便通晓,拖放事件开端时触发 ondragstart 事件,当被拖动成分步向可停放的因素时,触发 ondragenter 事件(ondragenter 实际不是在三个因素相交时即触发,而是该被拖拽成分在目的成分上运动一段时间后才触发),之后一段事件会不断触发 ondragover 事件(可参照他事他说加以考察mouseover),当被拖动成分离开可停放成分的一须臾,触发 ondragleave(和 ondragenter 对应) 事件,当松开鼠标何况被拖拽成分正幸而可放置成分上时,触发 ondrop 事件,当拖放事件甘休时,触发 ondragend(和 ondragstart 对应) 事件,无论拖放操作是还是不是成功,均会触发该事件。

dataTransfer


拖动进度中,回调函数接受的事件参数,有一个 dataTransfer 属性。它指向贰个对象,包涵了与拖动相关的种种音信。

dataTransfer 对象主要有二种办法:getData() 和 setData(),须求小心的是,独有在 dragstart 以及 drop 事件中动用那五个办法。简单想象,getData() 可以拿走由 setData() 保存的值。setData() 方法的率先个参数,也是 getData() 方法独一的贰个参数,是个字符串,表示保留的数据类型,取值为 ‘text’ 或 ‘URL’。IE 只定义了 ‘text’ 和 ‘U奥迪Q5L’ 三种有效的数据类型,而 HTML5 则对此加以增添,允许内定各样 MIME 类型。

在拖动文本框中的文本时,浏览器会自行调用 setData() 方法,将拖动的文本以 ‘text’ 格式保存在 dataTransfer 对象中,类似地,在拖放链接可能图像时,会自行调用 setData() 将 UPAJEROL 音信保存,若是有亟待,在 drop 事件中能够用 getData() 读取浏览器保存的值。

然而那就如并从未什么样卵用,大家在其实费用中比较多大概对 DOM 的操作,于是好多情景下大家在 dragstart 事件管理程序中调用 setData(),手工业保存自个儿要传输的数量,然后在 drop 事件中读取,有一点像 jQuery 的 data 事件。

dus.ondragover = function(e) {
e.preventDefault();
};

Drop


附带我们需求肯定被拖动成分可放置的职分,ondragover 事件规定在哪个地方放置被拖动的数码。
暗中同意地,无法将成分放置到另外因素中,假如须求安装允许放置,大家亟须遏止对成分的私下认可管理情势:

var dus = document.querySelector('.dustbin'); dus.ondragover = function(e) { e.preventDefault(); };

1
2
3
4
5
var dus = document.querySelector('.dustbin');
 
dus.ondragover = function(e) {
  e.preventDefault();
};

当元素被拖动到某一因素上时,即会触发后面一个的 ondrop 事件,借使要求正确触发 ondrop 事件,还亟需撤废部分 DnD 事件的暗中认可行为:

dus.ondrop = function(e) { // 调用 preventDefault() 来制止浏览器对数码的私下认可管理(drop 事件的私下认可行为是以链接情势张开) e.preventDefault(); e.stopPropagation(); // 宽容ff var id = e.dataTransfer.getData('id') , node = document.getElementById(id); node.parentNode.removeChild(node); };

1
2
3
4
5
6
7
8
9
10
dus.ondrop = function(e) {
  // 调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开)
  e.preventDefault();
  e.stopPropagation(); // 兼容ff
 
  var id = e.dataTransfer.getData('id')
    , node = document.getElementById(id);
 
  node.parentNode.removeChild(node);
};

稍微文献中说要注销 ondragenter() 事件的私下认可行为,楼主在实操中并未有发掘这一点。

var dus = document.querySelector('.dustbin');

而是 ff 不然,在 ff 中,元素在拖动的长河中不交易会示 “禁手”。

<img src="images/0.jpg" draggable="true" id="img0"/>

实际上,以上代码横生枝节了,页面中的图片(img)、链接(带 href 的 a 标签)以至文本默许即为可拖动。为了统一,最棒照旧都增多该 draggable 属性为好。draggable 属性还只怕有三个值,分别是 false 和 auto,以文害辞,false 即设置为不可拖动,auto 即为浏览器暗中认可值。

有些文献中说要撤废 ondragenter() 事件的私下认可行为,楼主在实操中从未开掘这一点。

第一大家须求内定要拖动的成分,设置方法很简单,给该 DOM 成分设置 draggable 属性,属性值设置为 true。举个例子那样:

地点已经关系了 DnD 中的五个事件,dragstart、dragover 以至 drop,其实 DnD 还大概有多少个事件,它们的发生顺序是:

在 HTML5 出现在此之前,页面成分的拖放供给监听 mousedown、mouseover 以致 mouseup 等一文山会海事件,然后退换成分的对峙地点来达成这一功用。HTML DnD(Drag-and-Drop)API 的产出,使得拖放变的简要。不过出于 DnD 尚处在草案阶段,各浏览器对其标准并没有统一,某事件在差异浏览器中会出现差异功效。

当大家左键点击(按下)可拖动的 DOM 元素,轻轻移动,即触发 ondragstart 事件,该事件只会触发一遍。常常大家会在 ondragstart 事件中记录正在被拖动的元素消息(ondrop 的时候好对其开展拍卖)。比方 demo 中记录了正在被拖动的要素 id:

dropEffect 与 effectAllowed

当元素被拖动到某一成分上时,即会接触前者的 ondrop 事件,假诺急需科学触发 ondrop 事件,还索要撤废一些 DnD 事件的暗中同意行为:

for (var i = lis.length; i--; ) {
lis[i].ondragstart = function(e) {
e.dataTransfer.setData('id', e.target.id);
};
}

Drop

貌似大家将成分脱离原来的岗位,平底足势会变成“禁手”,直到成分被拖到可停放区域上。

一而再阅读更多相关小说:

内需在 ondragstart 方法中装置 effectAllowed,在 ondragover 方法中设置 dropEffect。具体能够参见 demo代码。

dataTransfer 对象首要有三种形式:getData() 和 setData(),需求注意的是,唯有在 dragstart 以致 drop 事件中央银行使那四个方法。轻易想象,getData() 能够收获由 setData() 保存的值。
setData() 方法的率先个参数,也是 getData() 方法独一的三个参数,是个字符串,表示保留的数据类型,取值为 ‘text’ 或 ‘U凯雷德L’。IE 只定义了 ‘text’ 和 ‘UENCOREL’ 二种有效的数据类型, 而 HTML5 则对此加以扩充,允许钦命各类 MIME 类型。

拖动进程中,回调函数接受的轩然大波参数,有二个 dataTransfer 属性。它指向三个指标,包括了与拖动相关的各个新闻。

将 德姆o 在 ff 中打开,图片拖到空处,会自行在新标签中开垦图片,就算笔者早就在各类风浪中加上了 preventDefault(),尚不清楚原因。

事件

dropEffect 和 effectAllowed 是前方说的 dataTransfer 对象的多个天性,有甚用?轻松地说,有七个用处,一是能够安装成分被拖拽时的鼠标准样品式,二是足以设置成分是或不是可被停放。

再有几个推行进度中窥见的难题。

此间自身测验了四款浏览器,chrome、ff 以至 uc,chrome 和 uc 表现经常。

本文由WeX5君整理,WeX5一款开源无偿的html5开采工具,H5 App付出就用WeX5!

一言以蔽之要精晓的是,DnD 并不会帮您做到 copy 或然 move 的别样操作,而是必要顾客在 DnD 进度中,记录需求操作的靶子音讯,然后在 drop 事件中实现 copy 可能 move 等的操作。

node.parentNode.removeChild(node);
};

假诺可拖拽成分,起头在二个可放置成分内部,先把成分拖出去,再放回来,将会触发 ondrop 事件,可是 e.target 却是被拖拽的因素。假使放置在任何因素,target 会指向被停放的成分,实际不是拖拽元素。那一点能够透过判别 target 成分获得化解。关于那点能够看下 w3cschool 的那一个demo,张开调整台,将图纸拖出去,再拖回来,调整台会打印出荒谬,显然代码未有思念到那或多或少。

Tricks

协理大家须要显明被拖动成分可停放的任务,ondragover 事件规定在何方放置被拖动的数码。
私下认可地,无法将成分放置到任何因素中,假诺要求安装允许放置,我们必需遏止对成分的默许处理格局:

dragstart(drag元素) -> drag(drag元素) -> dragenter(drop元素) -> dragover(drop元素) -> dragleave(drop元素) -> drop(drop元素) -> dragend(drag元素)

dus.ondrop = function(e) {
// 调用 preventDefault() 来幸免浏览器对数据的暗中同意管理(drop 事件的暗中认可行为是以链接方式打开)
e.preventDefault();
e.stopPropagation(); // 兼容ff

但是那犹如并不曾什么卵用,大家在实际上付出中山大学部要么对 DOM 的操作,于是大多动静下大家在 dragstart 事件处理程序中调用 setData(),手工业保存本身要传输的数目,然后在 drop 事件中读取, 有一点点像 jQuery 的 data 事件。

要动用 DnD,须求掌握两件事情,一是索要拖动的因素,二是可停放拖动成分的岗位。拖放无非是将成分从二个职分拖到另三个职位。

实际通过设置 dropEffect 和 effectAllowed 总共能安装两种变形性骨炎势(move, copy,以致 link),分别如下(move 和暗中认可貌似同样):

      ondragstart 事件触发后,直到拖放事件甘休,会直接触发 ondrag 事件。

在拖动文本框中的文本时,浏览器会自行调用 setData() 方法,将拖动的文件以 ‘text’ 格式保存在 dataTransfer 对象中,类似地,在拖放链接恐怕图像时,会自行调用 setData() 将 U途乐L 新闻保存,即便有亟待,在 drop 事件中得以用 getData() 读取浏览器保存的值。

dataTransfer

本文由澳门金莎娱乐网站发布于澳门金莎娱乐网站,转载请注明出处:详解与实例代码【澳门金莎娱乐网站】,让拖放

关键词:

浏览器缓存机制澳门金莎娱乐网站:

浏览器缓存机制 2015/12/01 · HTML5 ·HTTP 原文出处:吴秦    浏览器缓存机制 浏览器缓存机制,其实 主要就是** HTTP协议...

详细>>

react组件间抽象,Native项目配置Navigator

学习React之前你需要知道的的JavaScript基础知识 2018/07/25 · JavaScript· React 原文出处: 此文章只适合新手,老司机如有宝...

详细>>

致我们终将组件化的Web,webpack使用理解

致我们终将组件化的Web 2015/11/25 · HTML5 · 1评论 ·组件化 原文出处:AlloyTeam    这篇文章将从两年前的一次技术争论...

详细>>

页面白屏与瀑布流分析方法,页面可见时间与异

页面白屏与瀑布流解析方法 2015/12/03 · HTML5,JavaScript · 1评论 ·瀑布流,白屏 初稿出处: 天猫商城前端团队(FED)-妙净...

详细>>