0

我正在使用一个名为Window postMessage Plugin的插件和UploadiFive将文件上传到我的服务器,并将文件链接插入到嵌入了我的上传脚本的网页上。它在桌面设备上运行良好(在 Firefox (v26) 和 Chrome (v31) 中测试)。

当我在我的 iPad(使用 Safari 运行 iOS 7.0.4)和我的 Android 手机(运行 Android 4.3 股票浏览器)上尝试它时,文件按预期上传,但它没有按应有的方式插入文件。任何想法为什么它可以在我的桌面上运行但不能在移动设备上运行?

这是我的代码:

JS

这个JS是从上传脚本中获取文件名,定位到插入文件的位置,然后根据文件类型插入代码。

pm.bind("message5", function(data) {
    var ext = data.split('.').pop().toLowerCase();
    myFrame = $('#editorf').contents().find('body');
    nestedFrame = myFrame.find('#re_contentIframe').contents().find('body');

    if (ext=='jpg' || ext=='jpeg' || ext=='bmp' || ext=='gif' || ext=='png' || ext=='tiff' || ext=='tif'){  
     nestedFrame.append($.parseHTML(' <br><br> <a href="http://www.domain.net/uploads/' + data + '" class="fancybox"><img style="max-width:250px;" class="forum-image" src="http://www.domain.net/uploads/' + data +'"/></a>'));
    } else if (ext=='pdf') {
        nestedFrame.append($.parseHTML('  <br><br> <a target="_blank" href="http://www.domain.net/uploads/' + data + '">View Uploaded PDF</a>'));
    } else {
        nestedFrame.append($.parseHTML('  <br><br> <a href="http://www.domain.net/uploads/' + data + '">Download Uploaded File</a>'));
    }
});

上传五个 JS

$('#file_upload').uploadifive({
            'formData'     : {
                'timestamp' : '<?php echo $timestamp;?>',
                'token'     : "<?php echo md5('unique_salt' . $timestamp);?>"
            },
            'uploadScript' : '/js/uploadify/uploadify.php',
            'onUploadComplete' : function(file, data) {
                var fileUploaded = data;
                pm({
                  target: window.parent,
                  type: "message5", 
                  data:fileUploaded 
                });
            }
        });

我如何让它在移动设备上工作?

注意:我使用的是 jQuery 2.0.3。

更新

为了尝试和调试问题,我尝试使用 Edge Inspect。当我通过 Edge Inspect 运行代码时,它起作用了!根据我在 iOS 和 Android 上的判断,它在股票浏览器中不起作用。我很困惑为什么。

4

0 回答 0