11
votes

Impossible d'obtenir l'image de résoudre pour fonctionner avec le téléchargement de fichier jQuery

J'essaie d'utiliser l'image latérale client disponible disponible dans le plugin de téléchargement de fichier jQuery, développé par Blueimp: https: //github.com/blueimp/jQuery-file-upload

Malheureusement, je ne peux pas récupérer l'image de travailler. Le téléchargement lui-même fonctionne parfaitement. P>

load-image.min.js
canvas-to-blob.js
jquery.ui.widget.js
jquery.fileupload.js
jquery.fileupload-process.js
jquery.fileupload-image.js
jquery.iframe-transport.js


2 commentaires

Je suis inquiet pour le soutien d'Android. Dit ici que les blobs ne fonctionnent pas pour les demandes XHR. github.com/blueimp/jquery-file-upload/ wiki / ... était-ce un problème pour vous?


@Dex, je ne me souviens pas de ce que j'ai fait sur Android. Mais je crois que le redimensionnement ne se produit pas si ce n'est pas pris en charge. Je sais que j'ai eu des problèmes dans un webview, où je devais faire le redimensionnement en Java.


3 Réponses :


16
votes

a trouvé la solution.

apparaît que lors de l'utilisation de l'extension code> FileduPload-threal code>, spécification de la fonction Ajouter code> La fonction remplace la fonctionnalité du processus Filedupload-processus ext. qui invoque le ProcessQuue, qui est l'endroit où l'image redimensionnement et plus sont enregistrées. p>

La solution consiste à joindre un écouteur d'événement sur Fileduploadadd code> au lieu de remplacer le Ajouter code > Fonction: p> xxx pré>

Alternativement, appelez la méthode d'addition d'origine à partir de votre propre méthode Ajouter: P>

$('.fileupload').fileupload({
    add: function(e, data) {
        $.blueimp.fileupload.prototype.options.add.call(this, e, data);
    }
});


2 commentaires

Juste ce dont j'avais besoin! Mon ajout Callback a modifié le fichier data en ajoutant data.Context . Pour ensuite accéder à data.context dans mon effectué rappel, je devais appeler $. Blanch.fileupload.pototype.option.add.call À la fin de mon rappel, plutôt qu'au début.


De plus, je pense que les appels de prototypes data.submit () , il n'est donc pas nécessaire d'appeler cela dans votre Ajouter Rappel.



1
votes

FYI - trouvé la solution [Utilisation du dernier téléchargement de github.com/blueim/] - redimensionnement a fonctionné pour "Basic Plus" mais pas "Basic Plus Ui" - Donc, en abandonnant le Main.js et en ajoutant le nouveau "hybride" comme ci-dessous sous le dernier des scripts JS - tout fonctionne un régal pour la version « UI Basic plus » pour avoir le redimensionnement d'image côté client

jquery.min.js
tmpl.min.js
jquery.ui.widget.js
load-image.all.min.js
canvas-to-blob.min.js
bootstrap.min.js
jquery.iframe-transport.js
jquery.fileupload.js
jquery.fileupload-process.js
jquery.fileupload-image.js
jquery.fileupload-audio.js
jquery.fileupload-video.js
jquery.fileupload-validate.js
jquery.fileupload-ui.js


0 commentaires

0
votes

J'ai aussi eu des problèmes avec JQuery File télécharger et réussir à le résoudre en modifiant les options du fichier "jquery.fileupload-image.js" dans la section suivante:

// The File Upload Resize plugin extends the fileupload widget
// with image resize functionality:
$.widget('blueimp.fileupload', $.blueimp.fileupload, {

    options: {
        ...
        // The maximum file size of images to load:
        loadImageMaxFileSize: 20000000, // 10MB
        // The maximum width of resized images:
        imageMaxWidth: 250,
        // The maximum height of resized images:
        imageMaxHeight: 250,
        ...
        // Disable the resize image functionality by default:
        disableImageResize: false,
        ...
    },


0 commentaires