jQuery脚本不适用于移动设备

时间:2013-12-07 05:49:54

标签: javascript jquery uploadify mobile-devices uploadifive

我使用名为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>'));
    }
});

UploadiFive 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上可以看出,它在股票浏览器中不起作用。我很困惑为什么。

0 个答案:

没有答案