Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php (YUI上载程序)侦听器未触发事件_Php_Javascript_Jquery_Yui_Yui Uploader - Fatal编程技术网

Php (YUI上载程序)侦听器未触发事件

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

我正在尝试使用YUI uploader,但单击“浏览”按钮时无法打开“文件”对话框窗口。我正在(或多或少地)跟踪调查

以下是我的HTML代码:

<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>