3
<title>Uploader Example: Single File Upload with Progress Tracking and a Sprite-skinned Button</title>
4
<script type="text/javascript" src="../../../build/yui/yui-min.js"></script>
5
<script type="text/javascript" src="../../../build/uploader-deprecated/uploader-deprecated.js"></script>
7
<style type="text/css">
12
text-decoration: none;
16
background: url("assets/uploadFileButton.png") 0 0 no-repeat;
19
.uploadButton a:visited {
20
background-position: 0 0;
23
.uploadButton a:hover {
24
background-position: 0 -40px;
27
.uploadButton a:active {
28
background-position: 0 -80px;
34
<h1>Uploader Example: Single File Upload with Progress Tracking and a Sprite-skinned Button</h1>
36
<div id="selectButton" style="width:100px;height:40px"></div>
37
<div class="uploadButton"><a href="#" id="uploadButtonLink"></a></div>
50
YUI({ debug:true, filter:"raw" }).use('base', 'event', 'node', 'swf', 'uploader-deprecated', function (Y) {
52
var uploader = new Y.Uploader({boundingBox:"#selectButton",
53
swfURL:"../../../build/uploader-deprecated/assets/uploader.swf",
54
buttonSkin:"assets/selectFileButton.png",
57
uploader.on("uploaderReady", setupUploader);
58
uploader.on("fileselect", fileSelect);
59
uploader.on("uploadprogress", updateProgress);
60
uploader.on("uploadcomplete", uploadComplete);
62
Y.one("#uploadButtonLink").on("click", uploadFile);
65
function setupUploader (event) {
66
uploader.set("multiFiles", false);
67
uploader.set("log", true);
69
var fileFilters = new Array({description:"Images", extensions:"*.jpg;*.png;*.gif"},
70
{description:"Videos", extensions:"*.avi;*.mov;*.mpg"});
72
uploader.set("fileFilters", fileFilters);
76
function fileSelect (event) {
77
var fileData = event.fileList;
79
for (var key in fileData) {
80
var output = "File selected: " + fileData[key].name;
81
Y.one("#filename").setContent(output);
85
function updateProgress (event) {
86
Y.one("#percent").setContent("Percent uploaded: " + Math.round((100 * event.bytesLoaded / event.bytesTotal)) + "%");
89
function uploadComplete (event) {
90
Y.one("#percent").setContent("Upload complete!");
93
function uploadFile (event) {
94
uploader.uploadAll("http://www.yswfblog.com/upload/upload_simple.php");