Php (YUI上载程序)侦听器未触发事件
我正在尝试使用YUI uploader,但单击“浏览”按钮时无法打开“文件”对话框窗口。我正在(或多或少地)跟踪调查 以下是我的HTML代码:Php (YUI上载程序)侦听器未触发事件,php,javascript,jquery,yui,yui-uploader,Php,Javascript,Jquery,Yui,Yui Uploader,我正在尝试使用YUI uploader,但单击“浏览”按钮时无法打开“文件”对话框窗口。我正在(或多或少地)跟踪调查 以下是我的HTML代码: <div id="fileProgress"> <input id="fileName" type="text" size="40" /> <input id="uploaderUI" name="uploaderUI" class="submitButton" type="button" value="Browse
<div id="fileProgress">
<input id="fileName" type="text" size="40" />
<input id="uploaderUI" name="uploaderUI" class="submitButton" type="button" value="Browse" />
<input id="uploadFile" name="uploadFile" class="submitButton" type="button" value="Upload" />
<div id="progressBar"></div>
</div>
更新
我“放弃”使用YUI uploader,现在正在使用Uploadify。我想这可能与uploader页面上的注释有关: 由于即将推出的Flash Player 10中的安全性更改,用于调用“浏览”对话框的UI必须包含在Flash Player中。正因为如此,这个新版本的上传程序与以前版本编写的代码不向后兼容(但是,它与FlashPlayer9兼容)。在未仔细阅读文档并查看新示例之前,请勿升级到此版本 这意味着您不必直接从
按钮调用上载功能,而必须创建另一个
,其中包含YUI uploader创建的透明闪存覆盖
:
YAHOO.util.Event.onDOMReady(函数(){
var uiLayer=YAHOO.util.Dom.getRegion('selectLink');
var overlay=YAHOO.util.Dom.get('uploaderOverlay');
YAHOO.util.Dom.setStyle(覆盖,'width',uiLayer.right-uiLayer.left+“px”);
YAHOO.util.Dom.setStyle(覆盖,'height',uiLayer.bottom-uiLayer.top+“px”);
});
我也有同样的问题
uploader.swf的2.8版本有一个bug
如果您遇到与我相同的问题,则切换到uploader.swf的2.7版本将使您的事件按预期触发。正常情况下,如果问题与swf文件有关,则原因是打开对话框的文件不是JAVASCRIPT,因此,你必须下载文件,并把你不能直接访问雅虎网站的服务器 也可以使用此依赖项 最好的 那鸿 我第一次使用yui上传时也遇到了同样的问题
jQuery(document).ready(function() {
initYUIUpload();
});
function initYUIUpload()
{
YAHOO.widget.Uploader.SWFURL = "wp-includes/js/yui/assets/uploader.swf";
var uploader = new YAHOO.widget.Uploader("uploaderUI");
uploader.addListener('contentReady', handleContentReady);
uploader.addListener('fileSelect',onFileSelect)
uploader.addListener('uploadStart',onUploadStart);
uploader.addListener('uploadProgress',onUploadProgress);
uploader.addListener('uploadCancel',onUploadCancel);
uploader.addListener('uploadComplete',onUploadComplete);
uploader.addListener('uploadCompleteData',onUploadResponse);
uploader.addListener('uploadError', onUploadError);
jQuery('#uploadFile').click(function(){ upload() });
}
<div id="uiElements" style="display:inline;">
<div id="uploaderContainer">
<div id="uploaderOverlay" style="position:absolute; z-index:2"></div>
<div id="selectFilesLink" style="z-index:1"><a id="selectLink" href="#">Select Files</a></div>
</div>
<div id="uploadFilesLink"><a id="uploadLink" onClick="upload(); return false;" href="#">Upload Files</a></div>
</div>
<script type="text/javascript">
YAHOO.util.Event.onDOMReady(function () {
var uiLayer = YAHOO.util.Dom.getRegion('selectLink');
var overlay = YAHOO.util.Dom.get('uploaderOverlay');
YAHOO.util.Dom.setStyle(overlay, 'width', uiLayer.right-uiLayer.left + "px");
YAHOO.util.Dom.setStyle(overlay, 'height', uiLayer.bottom-uiLayer.top + "px");
});
</script>