本帖最后由 u011789405 于 2014-12-25 10:56:55 编辑

解决方案 »

  1.   

    this.settings.button_image_url=SWFUpload.completeURL(this.settings.button_image_url)}
    uploadify会自动设置一个button的背景图片,所以这里要判断一下,存在button_image就设置,不然就不设置,这样就不会有404的报错了
    if(this.settings.button_image_url != ""){this.settings.button_image_url=SWFUpload.completeURL(this.settings.button_image_url)}}
      

  2.   

    问题找到了,可能是flashInstalled的逻辑没写对,但 确定,问题就出在当对flash那个文件操作的时候就会发请求,你可以把断点打到$('#' + swfuploadify.movieName).wrap($wrapper);这里试一试,在控制台里打印$('#' + swfuploadify.movieName)这个对象的时候就会发请求,还有一个请求是设置flash的position和z-index的时候,我懒得看逻辑,用了一个比较建的办法,把对flash的操作全部写在getFlashHTML这个方法里面,直接外面就给它套了一层div,并且给它设置定位和优先级,然后真的就不发404的错误了,对有洁癖的人来说确实有点恼火,我也是处女座……虽然办法不是很好,但问题还是解决了,希望对你有帮助。
      

  3.   

    具体代码是如下:
    把getFlashHTML()这个方法覆盖了;
    SWFUpload.prototype.getFlashHTML=function(){return['<div id="',this.settings.id,'" class="uploadify" style="height: ',this.settings.height,'px; width: ',this.settings.width,'px;" ><object style="position: absolute; z-index: 1" id="', this.movieName, '" type="application/x-shockwave-flash" data="', this.settings.flash_url, '" width="', this.settings.button_width, '" height="', this.settings.button_height, '" class="swfupload">', '<param name="wmode" value="', this.settings.button_window_mode, '" />', '<param name="movie" value="', this.settings.flash_url, '" />', '<param name="quality" value="high" />', '<param name="menu" value="false" />', '<param name="allowScriptAccess" value="always" />', '<param name="flashvars" value="' + this.getFlashVars() + '" />', "</object></div>"].join("")
    };// Wrap the instance
    //var $wrapper = $('<div />', {
    // 'id'    : settings.id,
    // 'class' : 'uploadify',
    // 'css'   : {
    // 'height'   : settings.height + 'px',
    // 'width'    : settings.width + 'px'
    //   }
    //});
    //$('#' + swfuploadify.movieName).wrap($wrapper);...// Adjust the styles of the movie
    //$('#' + swfuploadify.movieName).css({
    // 'position' : 'absolute',
    // 'z-index'  : 1
    //});这两部分注释了。