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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>HTML Test: dropzone_attribute_data_item_kind_string</title>
<link rel='author' title='Intel' href='http://www.intel.com'>
<link rel='author' title='Domenic Denicola' href='mailto:d@domenic.com'>
<link rel='help' href='https://html.spec.whatwg.org/multipage/#the-datatransfer-interface'>
<script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script>
<style>
#drop {
border: 2px solid black;
width: 100px;
height: 100px;
padding: 20px;
}
#drag {
color: blue;
margin: 20px auto;
}
</style>
</head>
<body>
<div>Select and drag the blue text to rectangular box.</div>
<div id='drag' draggable>blue text</div>
<div id='drop' dropzone='copy string:text/plain'></div>
<div id='log'> </div>
<script>
var drag;
setup(function() {
drag = document.querySelector('#drag');
}, {explicit_done: true, explicit_timeout: true});
on_event(drag, 'dragstart', function(event) {
test(function() {
assert_equals(event.dataTransfer.effectAllowed, 'uninitialized');
}, 'effectAllowed should be "uninitialized"');
test(function() {
assert_equals(event.dataTransfer.types.constructor, Array, 'should be an array');
assert_true(Object.isFrozen(event.dataTransfer.types), 'should be frozen');
}, 'types should be a frozen array');
test(function() {
assert_false('contains' in event.dataTransfer.types);
assert_false('item' in event.dataTransfer.types);
}, 'types should not have any of the historical methods');
test(function() {
assert_equals(event.dataTransfer.types, event.dataTransfer.types);
}, 'types should return the same object from multiple reads (assuming no changes)');
test(function() {
var before = event.dataTransfer.types;
event.dataTransfer.clearData();
assert_not_equals(event.dataTransfer.types, before);
}, 'types should return a different object after changes');
done();
});
</script>
</body>
</html>
|