Panzoom: Utilisez des dimensions appropriées pour le confinement

Créé le 30 août 2016  ·  10Commentaires  ·  Source: timmywil/panzoom

Objet du problème

Le confinement utilise parfois les dimensions parentes à la place des dimensions des éléments panzoom.

Votre environnement

  • version de jquery.panzoom 3.2.2
  • version de jquery 3.1.0
  • quel navigateur et sa version Chrome 52

    Étapes à suivre pour reproduire

http://jsbin.com/cidebod/edit?html , css, js, sortie

bug

Commentaire le plus utile

@arkoe a mis à jour la demande d' extraction n ° 279 pour gérer votre problème. Malheureusement, je n'ai pas pu mettre à jour vos exemples. Dites moi si ca marche.

Tous les 10 commentaires

@timmywil nous avons eu ce bug récemment, et nous venons d'écrire un correctif et d'ouvrir un PR. Veuillez vérifier: https://github.com/timmywil/jquery.panzoom/pull/279/files ou téléchargez-le directement .

@awartani Je suis confronté au même problème et votre solution n'a pas fonctionné.

Le problème se produit lorsque le div parent a des dimensions plus petites que l'élément panzoom (l'image).

@timmywil Une idée de la date à laquelle cela sera corrigé? J'adore vraiment le projet et j'adorerais l'utiliser :-).

@arkoe Je pense que vous avez testé la mauvaise branche, j'ai mis à jour votre exemple. Veuillez vérifier http://jsbin.com/gigadis/edit?html , css, js, sortie

@awartani Dans votre exemple, l'élément panzoom (carré bleu) est plus petit que le parent. Lorsque vous rendez l'élément plus grand que son parent, il bogue. Veuillez également noter que je n'ai pas créé ce problème; Je suis juste en train de m'accrocher :)

Désolé @arkoe, j'ai supposé que vous aviez créé ce problème. Je comprends maintenant le problème et je pense qu'il pourrait être facile à résoudre. Veuillez jeter un œil à la demande de tirage n ° 279 en particulier:

if (contain === 'invert' || (contain === 'automatic' && zoomAspectH < 1.01)) {
//original code
} else {
//my fix
var originalHeight = height / scale;
var originDiff = (originalHeight - height) / 2;
matrix[5] = Math.max(Math.min(matrix[5], conHeight - originalHeight + originDiff), -originDiff);
}

Parce que je ne sais pas trop comment tester la première instruction if et que ce n'est pas ce que je recherche, j'ai corrigé l'instruction else . Je crois que si vous avez pris le même correctif et l'ajuste un peu, vous pourrez le résoudre.

@awartani J'ai utilisé votre PR et j'ai essayé de jouer avec ça. Passez déjà quelques heures et n'arrivez pas à le réparer. Y a-t-il quelque chose dans votre esprit qui pourrait m'indiquer dans la bonne direction pour résoudre ce problème? Merci pour vos réponses rapides au fait! Vraiment apprécié.

@arkoe J'avais quelque chose à essayer mais je dois entrer et l'essayer, pouvez-vous pousser un exemple de code et j'essaierai de le regarder ce soir.

@awartani J'ai téléchargé deux exemples, demo.html est le fichier dist de @timmywil , demo2.html utilise votre correctif. http://arko.io/x/panzoom/demo.html http://arko.io/x/panzoom/demo2.html

@arkoe a mis à jour la demande d' extraction n ° 279 pour gérer votre problème. Malheureusement, je n'ai pas pu mettre à jour vos exemples. Dites moi si ca marche.

Merci @awartani. Correction de mes problèmes parfaitement!

Cette page vous a été utile?
0 / 5 - 0 notes